Created
April 8, 2014 12:47
-
-
Save ramntry/10118828 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module Main where | |
data Tree a = | |
Empty | |
| Node (Tree a) a (Tree a) | |
treeFromList :: (Ord a) => [a] -> Tree a | |
treeFromList = foldl insert Empty | |
where | |
insert Empty x = Node Empty x Empty | |
insert (Node left root right) x | x < root = Node (insert left x) root right | |
| otherwise = Node left root (insert right x) | |
flattenTree = helper [] | |
where | |
helper acc Empty = acc | |
helper acc (Node left root right) = helper (root : helper acc right) left | |
listSort :: (Ord a) => [a] -> [a] | |
listSort = flattenTree . treeFromList | |
readIntList :: Int -> IO [Int] | |
readIntList 0 = return [] | |
readIntList n = do | |
s <- getLine | |
xs <- readIntList (n - 1) | |
return (read s : xs) | |
main :: IO () | |
main = do | |
putStrLn "list size:" | |
sizeAns <- getLine | |
putStrLn "list items:" | |
intList <- readIntList (read sizeAns) | |
putStrLn $ show $ listSort intList |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" | |
target triple = "x86_64-linux-gnu" | |
declare ccc i8* @memcpy(i8*, i8*, i64) | |
declare ccc i8* @memmove(i8*, i8*, i64) | |
declare ccc i8* @memset(i8*, i64, i64) | |
declare ccc i64 @newSpark(i8*, i8*) | |
%__stginit_Main_struct = type <{}> | |
@__stginit_Main = global %__stginit_Main_struct<{}> | |
%Main_flattenTreezuhelper_closure_struct = type <{i64}> | |
@Main_flattenTreezuhelper_closure = global %Main_flattenTreezuhelper_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_flattenTreezuhelper_info to i64)}> | |
%Main_flattenTree_closure_struct = type <{i64}> | |
@Main_flattenTree_closure = global %Main_flattenTree_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_flattenTree_info to i64)}> | |
%r26o_closure_struct = type <{i64}> | |
@r26o_closure = internal global %r26o_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @r26o_info to i64)}> | |
%Main_listSortzulgo_closure_struct = type <{i64}> | |
@Main_listSortzulgo_closure = global %Main_listSortzulgo_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_listSortzulgo_info to i64)}> | |
%Main_listSortzuzdstreeFromList_closure_struct = type <{i64}> | |
@Main_listSortzuzdstreeFromList_closure = global %Main_listSortzuzdstreeFromList_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_listSortzuzdstreeFromList_info to i64)}> | |
%Main_treeFromList_closure_struct = type <{i64}> | |
@Main_treeFromList_closure = global %Main_treeFromList_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_treeFromList_info to i64)}> | |
%Main_listSortzuzdslistSort_closure_struct = type <{i64}> | |
@Main_listSortzuzdslistSort_closure = global %Main_listSortzuzdslistSort_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_listSortzuzdslistSort_info to i64)}> | |
%Main_listSort_closure_struct = type <{i64}> | |
@Main_listSort_closure = global %Main_listSort_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_listSort_info to i64)}> | |
%Main_zdwa_srt_struct = type <{i64, i64, i64, i64, i64, i64, i64}> | |
@Main_zdwa_srt = internal constant %Main_zdwa_srt_struct<{i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziText_hGetLine2_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziText_hGetLine3_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziInternals_wantReadableHandlezu1_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziFD_stdin_closure to i64), i64 ptrtoint ([0 x i64]* @base_TextziRead_zdwread_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziRead_zdfReadInt2_closure to i64), i64 ptrtoint (%Main_zdwa_closure_struct* @Main_zdwa_closure to i64)}> | |
%Main_zdwa_closure_struct = type <{i64, i64}> | |
@Main_zdwa_closure = global %Main_zdwa_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_zdwa_info to i64), i64 0}> | |
%Main_readIntList1_srt_struct = type <{i64}> | |
@Main_readIntList1_srt = internal constant %Main_readIntList1_srt_struct<{i64 ptrtoint (%Main_zdwa_closure_struct* @Main_zdwa_closure to i64)}> | |
%Main_readIntList1_closure_struct = type <{i64, i64}> | |
@Main_readIntList1_closure = global %Main_readIntList1_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_readIntList1_info to i64), i64 0}> | |
%Main_readIntList_srt_struct = type <{i64}> | |
@Main_readIntList_srt = internal constant %Main_readIntList_srt_struct<{i64 ptrtoint (%Main_zdwa_closure_struct* @Main_zdwa_closure to i64)}> | |
%Main_readIntList_closure_struct = type <{i64, i64}> | |
@Main_readIntList_closure = global %Main_readIntList_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_readIntList_info to i64), i64 0}> | |
%Main_main2_closure_struct = type <{i64, i64, i64, i64}> | |
@Main_main2_closure = global %Main_main2_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main2_info to i64), i64 0, i64 0, i64 0}> | |
%c2a7_str_struct = type <{[12 x i8]}> | |
@c2a7_str = internal constant %c2a7_str_struct<{[12 x i8] [i8 108, i8 105, i8 115, i8 116, i8 32, i8 105, i8 116, i8 101, i8 109, i8 115, i8 58, i8 0]}> | |
%Main_main3_closure_struct = type <{i64, i64, i64, i64}> | |
@Main_main3_closure = global %Main_main3_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main3_info to i64), i64 0, i64 0, i64 0}> | |
%c2a0_str_struct = type <{[11 x i8]}> | |
@c2a0_str = internal constant %c2a0_str_struct<{[11 x i8] [i8 108, i8 105, i8 115, i8 116, i8 32, i8 115, i8 105, i8 122, i8 101, i8 58, i8 0]}> | |
%Main_main1_srt_struct = type <{i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64}> | |
@Main_main1_srt = internal constant %Main_main1_srt_struct<{i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziText_hGetLine2_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziText_hGetLine3_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziInternals_wantReadableHandlezu1_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziText_hPutStr2_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziFD_stdout_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziIOziHandleziFD_stdin_closure to i64), i64 ptrtoint ([0 x i64]* @base_TextziRead_zdwread_closure to i64), i64 ptrtoint ([0 x i64]* @base_GHCziRead_zdfReadInt2_closure to i64), i64 ptrtoint (%Main_zdwa_closure_struct* @Main_zdwa_closure to i64), i64 ptrtoint (%Main_main2_closure_struct* @Main_main2_closure to i64), i64 ptrtoint (%Main_main3_closure_struct* @Main_main3_closure to i64)}> | |
@base_GHCziIOziHandleziText_hGetLine2_closure = external global [0 x i64] | |
@base_GHCziIOziHandleziText_hGetLine3_closure = external global [0 x i64] | |
@base_GHCziIOziHandleziInternals_wantReadableHandlezu1_closure = external global [0 x i64] | |
@base_GHCziIOziHandleziText_hPutStr2_closure = external global [0 x i64] | |
@base_GHCziIOziHandleziFD_stdout_closure = external global [0 x i64] | |
@base_GHCziIOziHandleziFD_stdin_closure = external global [0 x i64] | |
@base_TextziRead_zdwread_closure = external global [0 x i64] | |
@base_GHCziRead_zdfReadInt2_closure = external global [0 x i64] | |
%Main_main1_closure_struct = type <{i64, i64}> | |
@Main_main1_closure = global %Main_main1_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main1_info to i64), i64 0}> | |
%Main_main_srt_struct = type <{i64}> | |
@Main_main_srt = internal constant %Main_main_srt_struct<{i64 ptrtoint (%Main_main1_closure_struct* @Main_main1_closure to i64)}> | |
%Main_main_closure_struct = type <{i64, i64}> | |
@Main_main_closure = global %Main_main_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main_info to i64), i64 0}> | |
%Main_main4_srt_struct = type <{i64, i64}> | |
@Main_main4_srt = internal constant %Main_main4_srt_struct<{i64 ptrtoint ([0 x i64]* @base_GHCziTopHandler_runMainIO1_closure to i64), i64 ptrtoint (%Main_main1_closure_struct* @Main_main1_closure to i64)}> | |
@base_GHCziTopHandler_runMainIO1_closure = external global [0 x i64] | |
%Main_main4_closure_struct = type <{i64, i64}> | |
@Main_main4_closure = global %Main_main4_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main4_info to i64), i64 0}> | |
%ZCMain_main_srt_struct = type <{i64}> | |
@ZCMain_main_srt = internal constant %ZCMain_main_srt_struct<{i64 ptrtoint (%Main_main4_closure_struct* @Main_main4_closure to i64)}> | |
%ZCMain_main_closure_struct = type <{i64, i64}> | |
@ZCMain_main_closure = global %ZCMain_main_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @ZCMain_main_info to i64), i64 0}> | |
%Main_Empty_closure_struct = type <{i64}> | |
@Main_Empty_closure = global %Main_Empty_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Empty_static_info to i64)}> | |
%Main_Node_closure_struct = type <{i64}> | |
@Main_Node_closure = global %Main_Node_closure_struct<{i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_info to i64)}> | |
%i29G_str_struct = type <{[16 x i8]}> | |
@i29G_str = internal constant %i29G_str_struct<{[16 x i8] [i8 109, i8 97, i8 105, i8 110, i8 58, i8 77, i8 97, i8 105, i8 110, i8 46, i8 69, i8 109, i8 112, i8 116, i8 121, i8 0]}> | |
%i29F_str_struct = type <{[15 x i8]}> | |
@i29F_str = internal constant %i29F_str_struct<{[15 x i8] [i8 109, i8 97, i8 105, i8 110, i8 58, i8 77, i8 97, i8 105, i8 110, i8 46, i8 78, i8 111, i8 100, i8 101, i8 0]}> | |
%i29E_str_struct = type <{[15 x i8]}> | |
@i29E_str = internal constant %i29E_str_struct<{[15 x i8] [i8 109, i8 97, i8 105, i8 110, i8 58, i8 77, i8 97, i8 105, i8 110, i8 46, i8 78, i8 111, i8 100, i8 101, i8 0]}> | |
%s26A_info_struct = type <{i64, i64}> | |
@s26A_info_itable = internal constant %s26A_info_struct<{i64 2, i64 19}>, section "X98A__STRIP,__me1", align 8 | |
define internal cc 10 void @s26A_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me2" | |
{ | |
c2bj: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2bk = load i64** %Sp_Var | |
%ln2bl = getelementptr inbounds i64* %ln2bk, i32 -2 | |
%ln2bm = ptrtoint i64* %ln2bl to i64 | |
%ln2bn = load i64* %SpLim_Var | |
%ln2bo = icmp ult i64 %ln2bm, %ln2bn | |
br i1 %ln2bo, label %c2bq, label %n2br | |
n2br: | |
%ln2bs = ptrtoint [0 x i64]* @stg_upd_frame_info to i64 | |
%ln2bt = load i64** %Sp_Var | |
%ln2bu = getelementptr inbounds i64* %ln2bt, i32 -2 | |
store i64 %ln2bs, i64* %ln2bu | |
%ln2bv = load i64* %R1_Var | |
%ln2bw = load i64** %Sp_Var | |
%ln2bx = getelementptr inbounds i64* %ln2bw, i32 -1 | |
store i64 %ln2bv, i64* %ln2bx | |
%ln2by = load i64* %R1_Var | |
%ln2bz = add i64 %ln2by, 16 | |
%ln2bA = inttoptr i64 %ln2bz to i64* | |
%ln2bB = load i64* %ln2bA | |
store i64 %ln2bB, i64* %R2_Var | |
%ln2bC = load i64* %R1_Var | |
%ln2bD = add i64 %ln2bC, 24 | |
%ln2bE = inttoptr i64 %ln2bD to i64* | |
%ln2bF = load i64* %ln2bE | |
store i64 %ln2bF, i64* %R3_Var | |
%ln2bG = load i64** %Sp_Var | |
%ln2bH = getelementptr inbounds i64* %ln2bG, i32 -2 | |
%ln2bI = ptrtoint i64* %ln2bH to i64 | |
%ln2bJ = inttoptr i64 %ln2bI to i64* | |
store i64* %ln2bJ, i64** %Sp_Var | |
%ln2bK = load i64** %Base_Var | |
%ln2bL = load i64** %Sp_Var | |
%ln2bM = load i64** %Hp_Var | |
%ln2bN = load i64* %R1_Var | |
%ln2bO = load i64* %R2_Var | |
%ln2bP = load i64* %R3_Var | |
%ln2bQ = load i64* %R4_Var | |
%ln2bR = load i64* %R5_Var | |
%ln2bS = load i64* %R6_Var | |
%ln2bT = load i64* %SpLim_Var | |
%ln2bU = load float* %F1_Var | |
%ln2bV = load float* %F2_Var | |
%ln2bW = load float* %F3_Var | |
%ln2bX = load float* %F4_Var | |
%ln2bY = load double* %D1_Var | |
%ln2bZ = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_flattenTreezuhelper_info( i64* %ln2bK, i64* %ln2bL, i64* %ln2bM, i64 %ln2bN, i64 %ln2bO, i64 %ln2bP, i64 %ln2bQ, i64 %ln2bR, i64 %ln2bS, i64 %ln2bT, float %ln2bU, float %ln2bV, float %ln2bW, float %ln2bX, double %ln2bY, double %ln2bZ ) nounwind | |
ret void | |
c2bq: | |
%ln2c0 = load i64** %Base_Var | |
%ln2c1 = getelementptr inbounds i64* %ln2c0, i32 -2 | |
%ln2c2 = bitcast i64* %ln2c1 to i64* | |
%ln2c3 = load i64* %ln2c2 | |
%ln2c4 = inttoptr i64 %ln2c3 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2c5 = load i64** %Base_Var | |
%ln2c6 = load i64** %Sp_Var | |
%ln2c7 = load i64** %Hp_Var | |
%ln2c8 = load i64* %R1_Var | |
%ln2c9 = load i64* %R2_Var | |
%ln2ca = load i64* %R3_Var | |
%ln2cb = load i64* %R4_Var | |
%ln2cc = load i64* %R5_Var | |
%ln2cd = load i64* %R6_Var | |
%ln2ce = load i64* %SpLim_Var | |
%ln2cf = load float* %F1_Var | |
%ln2cg = load float* %F2_Var | |
%ln2ch = load float* %F3_Var | |
%ln2ci = load float* %F4_Var | |
%ln2cj = load double* %D1_Var | |
%ln2ck = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2c4( i64* %ln2c5, i64* %ln2c6, i64* %ln2c7, i64 %ln2c8, i64 %ln2c9, i64 %ln2ca, i64 %ln2cb, i64 %ln2cc, i64 %ln2cd, i64 %ln2ce, float %ln2cf, float %ln2cg, float %ln2ch, float %ln2ci, double %ln2cj, double %ln2ck ) nounwind | |
ret void | |
} | |
@stg_upd_frame_info = external global [0 x i64] | |
%s29z_ret_struct = type <{i64, i64}> | |
@s29z_info_itable = internal constant %s29z_ret_struct<{i64 1, i64 32}>, section "X98A__STRIP,__me3", align 8 | |
define internal cc 10 void @s29z_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me4" | |
{ | |
c2er: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2co = alloca i64, i32 1 | |
%ln2es = load i64* %R1_Var | |
%ln2et = and i64 %ln2es, 7 | |
store i64 %ln2et, i64* %lc2co | |
%ln2eu = load i64* %lc2co | |
%ln2ev = icmp uge i64 %ln2eu, 2 | |
br i1 %ln2ev, label %c2ew, label %n2ex | |
n2ex: | |
%ln2ey = load i64** %Sp_Var | |
%ln2ez = getelementptr inbounds i64* %ln2ey, i32 1 | |
%ln2eA = bitcast i64* %ln2ez to i64* | |
%ln2eB = load i64* %ln2eA | |
store i64 %ln2eB, i64* %R1_Var | |
%ln2eC = load i64** %Sp_Var | |
%ln2eD = getelementptr inbounds i64* %ln2eC, i32 2 | |
%ln2eE = ptrtoint i64* %ln2eD to i64 | |
%ln2eF = inttoptr i64 %ln2eE to i64* | |
store i64* %ln2eF, i64** %Sp_Var | |
%ln2eG = load i64* %R1_Var | |
%ln2eH = and i64 %ln2eG, -8 | |
store i64 %ln2eH, i64* %R1_Var | |
%ln2eI = load i64* %R1_Var | |
%ln2eJ = inttoptr i64 %ln2eI to i64* | |
%ln2eK = load i64* %ln2eJ | |
%ln2eL = inttoptr i64 %ln2eK to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2eM = load i64** %Base_Var | |
%ln2eN = load i64** %Sp_Var | |
%ln2eO = load i64** %Hp_Var | |
%ln2eP = load i64* %R1_Var | |
%ln2eQ = load i64* %R2_Var | |
%ln2eR = load i64* %R3_Var | |
%ln2eS = load i64* %R4_Var | |
%ln2eT = load i64* %R5_Var | |
%ln2eU = load i64* %R6_Var | |
%ln2eV = load i64* %SpLim_Var | |
%ln2eW = load float* %F1_Var | |
%ln2eX = load float* %F2_Var | |
%ln2eY = load float* %F3_Var | |
%ln2eZ = load float* %F4_Var | |
%ln2f0 = load double* %D1_Var | |
%ln2f1 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2eL( i64* %ln2eM, i64* %ln2eN, i64* %ln2eO, i64 %ln2eP, i64 %ln2eQ, i64 %ln2eR, i64 %ln2eS, i64 %ln2eT, i64 %ln2eU, i64 %ln2eV, float %ln2eW, float %ln2eX, float %ln2eY, float %ln2eZ, double %ln2f0, double %ln2f1 ) nounwind | |
ret void | |
c2ew: | |
%ln2f2 = load i64** %Hp_Var | |
%ln2f3 = getelementptr inbounds i64* %ln2f2, i32 7 | |
%ln2f4 = ptrtoint i64* %ln2f3 to i64 | |
%ln2f5 = inttoptr i64 %ln2f4 to i64* | |
store i64* %ln2f5, i64** %Hp_Var | |
%ln2f6 = load i64** %Hp_Var | |
%ln2f7 = ptrtoint i64* %ln2f6 to i64 | |
%ln2f8 = load i64** %Base_Var | |
%ln2f9 = getelementptr inbounds i64* %ln2f8, i32 18 | |
%ln2fa = bitcast i64* %ln2f9 to i64* | |
%ln2fb = load i64* %ln2fa | |
%ln2fc = icmp ugt i64 %ln2f7, %ln2fb | |
br i1 %ln2fc, label %c2ff, label %n2fg | |
n2fg: | |
%ln2fh = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s26A_info to i64 | |
%ln2fi = load i64** %Hp_Var | |
%ln2fj = getelementptr inbounds i64* %ln2fi, i32 -6 | |
store i64 %ln2fh, i64* %ln2fj | |
%ln2fk = load i64** %Sp_Var | |
%ln2fl = getelementptr inbounds i64* %ln2fk, i32 1 | |
%ln2fm = bitcast i64* %ln2fl to i64* | |
%ln2fn = load i64* %ln2fm | |
%ln2fo = load i64** %Hp_Var | |
%ln2fp = getelementptr inbounds i64* %ln2fo, i32 -4 | |
store i64 %ln2fn, i64* %ln2fp | |
%ln2fq = load i64* %R1_Var | |
%ln2fr = add i64 %ln2fq, 22 | |
%ln2fs = inttoptr i64 %ln2fr to i64* | |
%ln2ft = load i64* %ln2fs | |
%ln2fu = load i64** %Hp_Var | |
%ln2fv = getelementptr inbounds i64* %ln2fu, i32 -3 | |
store i64 %ln2ft, i64* %ln2fv | |
%ln2fw = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZC_con_info to i64 | |
%ln2fx = load i64** %Hp_Var | |
%ln2fy = getelementptr inbounds i64* %ln2fx, i32 -2 | |
store i64 %ln2fw, i64* %ln2fy | |
%ln2fz = load i64* %R1_Var | |
%ln2fA = add i64 %ln2fz, 14 | |
%ln2fB = inttoptr i64 %ln2fA to i64* | |
%ln2fC = load i64* %ln2fB | |
%ln2fD = load i64** %Hp_Var | |
%ln2fE = getelementptr inbounds i64* %ln2fD, i32 -1 | |
store i64 %ln2fC, i64* %ln2fE | |
%ln2fF = load i64** %Hp_Var | |
%ln2fG = getelementptr inbounds i64* %ln2fF, i32 -6 | |
%ln2fH = ptrtoint i64* %ln2fG to i64 | |
%ln2fI = load i64** %Hp_Var | |
%ln2fJ = getelementptr inbounds i64* %ln2fI, i32 0 | |
store i64 %ln2fH, i64* %ln2fJ | |
%ln2fK = load i64** %Hp_Var | |
%ln2fL = ptrtoint i64* %ln2fK to i64 | |
%ln2fM = add i64 %ln2fL, -14 | |
store i64 %ln2fM, i64* %R2_Var | |
%ln2fN = load i64* %R1_Var | |
%ln2fO = add i64 %ln2fN, 6 | |
%ln2fP = inttoptr i64 %ln2fO to i64* | |
%ln2fQ = load i64* %ln2fP | |
store i64 %ln2fQ, i64* %R3_Var | |
%ln2fR = load i64** %Sp_Var | |
%ln2fS = getelementptr inbounds i64* %ln2fR, i32 2 | |
%ln2fT = ptrtoint i64* %ln2fS to i64 | |
%ln2fU = inttoptr i64 %ln2fT to i64* | |
store i64* %ln2fU, i64** %Sp_Var | |
%ln2fV = load i64** %Base_Var | |
%ln2fW = load i64** %Sp_Var | |
%ln2fX = load i64** %Hp_Var | |
%ln2fY = load i64* %R1_Var | |
%ln2fZ = load i64* %R2_Var | |
%ln2g0 = load i64* %R3_Var | |
%ln2g1 = load i64* %R4_Var | |
%ln2g2 = load i64* %R5_Var | |
%ln2g3 = load i64* %R6_Var | |
%ln2g4 = load i64* %SpLim_Var | |
%ln2g5 = load float* %F1_Var | |
%ln2g6 = load float* %F2_Var | |
%ln2g7 = load float* %F3_Var | |
%ln2g8 = load float* %F4_Var | |
%ln2g9 = load double* %D1_Var | |
%ln2ga = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_flattenTreezuhelper_info( i64* %ln2fV, i64* %ln2fW, i64* %ln2fX, i64 %ln2fY, i64 %ln2fZ, i64 %ln2g0, i64 %ln2g1, i64 %ln2g2, i64 %ln2g3, i64 %ln2g4, float %ln2g5, float %ln2g6, float %ln2g7, float %ln2g8, double %ln2g9, double %ln2ga ) nounwind | |
ret void | |
c2gb: | |
%ln2gc = load i64** %Base_Var | |
%ln2gd = getelementptr inbounds i64* %ln2gc, i32 -2 | |
%ln2ge = bitcast i64* %ln2gd to i64* | |
%ln2gf = load i64* %ln2ge | |
%ln2gg = inttoptr i64 %ln2gf to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2gh = load i64** %Base_Var | |
%ln2gi = load i64** %Sp_Var | |
%ln2gj = load i64** %Hp_Var | |
%ln2gk = load i64* %R1_Var | |
%ln2gl = load i64* %R2_Var | |
%ln2gm = load i64* %R3_Var | |
%ln2gn = load i64* %R4_Var | |
%ln2go = load i64* %R5_Var | |
%ln2gp = load i64* %R6_Var | |
%ln2gq = load i64* %SpLim_Var | |
%ln2gr = load float* %F1_Var | |
%ln2gs = load float* %F2_Var | |
%ln2gt = load float* %F3_Var | |
%ln2gu = load float* %F4_Var | |
%ln2gv = load double* %D1_Var | |
%ln2gw = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2gg( i64* %ln2gh, i64* %ln2gi, i64* %ln2gj, i64 %ln2gk, i64 %ln2gl, i64 %ln2gm, i64 %ln2gn, i64 %ln2go, i64 %ln2gp, i64 %ln2gq, float %ln2gr, float %ln2gs, float %ln2gt, float %ln2gu, double %ln2gv, double %ln2gw ) nounwind | |
ret void | |
c2ff: | |
%ln2gx = load i64** %Base_Var | |
%ln2gy = getelementptr inbounds i64* %ln2gx, i32 24 | |
store i64 56, i64* %ln2gy | |
br label %c2gb | |
} | |
@ghczmprim_GHCziTypes_ZC_con_info = external global [0 x i64] | |
%Main_flattenTreezuhelper_info_struct = type <{i64, i64, i64}> | |
@Main_flattenTreezuhelper_info_itable = constant %Main_flattenTreezuhelper_info_struct<{i64 8589934604, i64 0, i64 15}>, section "X98A__STRIP,__me5", align 8 | |
define cc 10 void @Main_flattenTreezuhelper_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me6" | |
{ | |
c2hR: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2hS = load i64** %Sp_Var | |
%ln2hT = getelementptr inbounds i64* %ln2hS, i32 -2 | |
%ln2hU = ptrtoint i64* %ln2hT to i64 | |
%ln2hV = load i64* %SpLim_Var | |
%ln2hW = icmp ult i64 %ln2hU, %ln2hV | |
br i1 %ln2hW, label %c2hY, label %n2hZ | |
n2hZ: | |
%ln2i0 = load i64* %R2_Var | |
%ln2i1 = load i64** %Sp_Var | |
%ln2i2 = getelementptr inbounds i64* %ln2i1, i32 -1 | |
store i64 %ln2i0, i64* %ln2i2 | |
%ln2i3 = load i64* %R3_Var | |
store i64 %ln2i3, i64* %R1_Var | |
%ln2i4 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29z_info to i64 | |
%ln2i5 = load i64** %Sp_Var | |
%ln2i6 = getelementptr inbounds i64* %ln2i5, i32 -2 | |
store i64 %ln2i4, i64* %ln2i6 | |
%ln2i7 = load i64** %Sp_Var | |
%ln2i8 = getelementptr inbounds i64* %ln2i7, i32 -2 | |
%ln2i9 = ptrtoint i64* %ln2i8 to i64 | |
%ln2ia = inttoptr i64 %ln2i9 to i64* | |
store i64* %ln2ia, i64** %Sp_Var | |
%ln2ib = load i64* %R1_Var | |
%ln2ic = and i64 %ln2ib, 7 | |
%ln2id = icmp ne i64 %ln2ic, 0 | |
br i1 %ln2id, label %c2ig, label %n2ih | |
n2ih: | |
%ln2ii = load i64* %R1_Var | |
%ln2ij = inttoptr i64 %ln2ii to i64* | |
%ln2ik = load i64* %ln2ij | |
%ln2il = inttoptr i64 %ln2ik to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2im = load i64** %Base_Var | |
%ln2in = load i64** %Sp_Var | |
%ln2io = load i64** %Hp_Var | |
%ln2ip = load i64* %R1_Var | |
%ln2iq = load i64* %R2_Var | |
%ln2ir = load i64* %R3_Var | |
%ln2is = load i64* %R4_Var | |
%ln2it = load i64* %R5_Var | |
%ln2iu = load i64* %R6_Var | |
%ln2iv = load i64* %SpLim_Var | |
%ln2iw = load float* %F1_Var | |
%ln2ix = load float* %F2_Var | |
%ln2iy = load float* %F3_Var | |
%ln2iz = load float* %F4_Var | |
%ln2iA = load double* %D1_Var | |
%ln2iB = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2il( i64* %ln2im, i64* %ln2in, i64* %ln2io, i64 %ln2ip, i64 %ln2iq, i64 %ln2ir, i64 %ln2is, i64 %ln2it, i64 %ln2iu, i64 %ln2iv, float %ln2iw, float %ln2ix, float %ln2iy, float %ln2iz, double %ln2iA, double %ln2iB ) nounwind | |
ret void | |
c2hY: | |
%ln2iC = ptrtoint %Main_flattenTreezuhelper_closure_struct* @Main_flattenTreezuhelper_closure to i64 | |
store i64 %ln2iC, i64* %R1_Var | |
%ln2iD = load i64** %Base_Var | |
%ln2iE = getelementptr inbounds i64* %ln2iD, i32 -1 | |
%ln2iF = bitcast i64* %ln2iE to i64* | |
%ln2iG = load i64* %ln2iF | |
%ln2iH = inttoptr i64 %ln2iG to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2iI = load i64** %Base_Var | |
%ln2iJ = load i64** %Sp_Var | |
%ln2iK = load i64** %Hp_Var | |
%ln2iL = load i64* %R1_Var | |
%ln2iM = load i64* %R2_Var | |
%ln2iN = load i64* %R3_Var | |
%ln2iO = load i64* %R4_Var | |
%ln2iP = load i64* %R5_Var | |
%ln2iQ = load i64* %R6_Var | |
%ln2iR = load i64* %SpLim_Var | |
%ln2iS = load float* %F1_Var | |
%ln2iT = load float* %F2_Var | |
%ln2iU = load float* %F3_Var | |
%ln2iV = load float* %F4_Var | |
%ln2iW = load double* %D1_Var | |
%ln2iX = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2iH( i64* %ln2iI, i64* %ln2iJ, i64* %ln2iK, i64 %ln2iL, i64 %ln2iM, i64 %ln2iN, i64 %ln2iO, i64 %ln2iP, i64 %ln2iQ, i64 %ln2iR, float %ln2iS, float %ln2iT, float %ln2iU, float %ln2iV, double %ln2iW, double %ln2iX ) nounwind | |
ret void | |
c2ig: | |
%ln2iY = load i64** %Base_Var | |
%ln2iZ = load i64** %Sp_Var | |
%ln2j0 = load i64** %Hp_Var | |
%ln2j1 = load i64* %R1_Var | |
%ln2j2 = load i64* %R2_Var | |
%ln2j3 = load i64* %R3_Var | |
%ln2j4 = load i64* %R4_Var | |
%ln2j5 = load i64* %R5_Var | |
%ln2j6 = load i64* %R6_Var | |
%ln2j7 = load i64* %SpLim_Var | |
%ln2j8 = load float* %F1_Var | |
%ln2j9 = load float* %F2_Var | |
%ln2ja = load float* %F3_Var | |
%ln2jb = load float* %F4_Var | |
%ln2jc = load double* %D1_Var | |
%ln2jd = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29z_info( i64* %ln2iY, i64* %ln2iZ, i64* %ln2j0, i64 %ln2j1, i64 %ln2j2, i64 %ln2j3, i64 %ln2j4, i64 %ln2j5, i64 %ln2j6, i64 %ln2j7, float %ln2j8, float %ln2j9, float %ln2ja, float %ln2jb, double %ln2jc, double %ln2jd ) nounwind | |
ret void | |
} | |
%Main_flattenTree_info_struct = type <{i64, i64, i64}> | |
@Main_flattenTree_info_itable = constant %Main_flattenTree_info_struct<{i64 4294967301, i64 0, i64 15}>, section "X98A__STRIP,__me7", align 8 | |
define cc 10 void @Main_flattenTree_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me8" | |
{ | |
c2jA: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2jB = load i64* %R2_Var | |
store i64 %ln2jB, i64* %R3_Var | |
%ln2jC = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZMZN_closure to i64 | |
%ln2jD = add i64 %ln2jC, 1 | |
store i64 %ln2jD, i64* %R2_Var | |
%ln2jE = load i64** %Base_Var | |
%ln2jF = load i64** %Sp_Var | |
%ln2jG = load i64** %Hp_Var | |
%ln2jH = load i64* %R1_Var | |
%ln2jI = load i64* %R2_Var | |
%ln2jJ = load i64* %R3_Var | |
%ln2jK = load i64* %R4_Var | |
%ln2jL = load i64* %R5_Var | |
%ln2jM = load i64* %R6_Var | |
%ln2jN = load i64* %SpLim_Var | |
%ln2jO = load float* %F1_Var | |
%ln2jP = load float* %F2_Var | |
%ln2jQ = load float* %F3_Var | |
%ln2jR = load float* %F4_Var | |
%ln2jS = load double* %D1_Var | |
%ln2jT = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_flattenTreezuhelper_info( i64* %ln2jE, i64* %ln2jF, i64* %ln2jG, i64 %ln2jH, i64 %ln2jI, i64 %ln2jJ, i64 %ln2jK, i64 %ln2jL, i64 %ln2jM, i64 %ln2jN, float %ln2jO, float %ln2jP, float %ln2jQ, float %ln2jR, double %ln2jS, double %ln2jT ) nounwind | |
ret void | |
} | |
@ghczmprim_GHCziTypes_ZMZN_closure = external global [0 x i64] | |
%s29w_info_struct = type <{i64, i64}> | |
@s29w_info_itable = internal constant %s29w_info_struct<{i64 4294967297, i64 20}>, section "X98A__STRIP,__me9", align 8 | |
define internal cc 10 void @s29w_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me10" | |
{ | |
c2lc: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2ld = load i64** %Sp_Var | |
%ln2le = getelementptr inbounds i64* %ln2ld, i32 -2 | |
%ln2lf = ptrtoint i64* %ln2le to i64 | |
%ln2lg = load i64* %SpLim_Var | |
%ln2lh = icmp ult i64 %ln2lf, %ln2lg | |
br i1 %ln2lh, label %c2lj, label %n2lk | |
n2lk: | |
%ln2ll = ptrtoint [0 x i64]* @stg_upd_frame_info to i64 | |
%ln2lm = load i64** %Sp_Var | |
%ln2ln = getelementptr inbounds i64* %ln2lm, i32 -2 | |
store i64 %ln2ll, i64* %ln2ln | |
%ln2lo = load i64* %R1_Var | |
%ln2lp = load i64** %Sp_Var | |
%ln2lq = getelementptr inbounds i64* %ln2lp, i32 -1 | |
store i64 %ln2lo, i64* %ln2lq | |
%ln2lr = load i64* %R1_Var | |
%ln2ls = add i64 %ln2lr, 16 | |
%ln2lt = inttoptr i64 %ln2ls to i64* | |
%ln2lu = load i64* %ln2lt | |
store i64 %ln2lu, i64* %R2_Var | |
%ln2lv = load i64* %R1_Var | |
%ln2lw = add i64 %ln2lv, 24 | |
%ln2lx = inttoptr i64 %ln2lw to i64* | |
%ln2ly = load i64* %ln2lx | |
store i64 %ln2ly, i64* %R3_Var | |
%ln2lz = load i64** %Sp_Var | |
%ln2lA = getelementptr inbounds i64* %ln2lz, i32 -2 | |
%ln2lB = ptrtoint i64* %ln2lA to i64 | |
%ln2lC = inttoptr i64 %ln2lB to i64* | |
store i64* %ln2lC, i64** %Sp_Var | |
%ln2lD = load i64** %Base_Var | |
%ln2lE = load i64** %Sp_Var | |
%ln2lF = load i64** %Hp_Var | |
%ln2lG = load i64* %R1_Var | |
%ln2lH = load i64* %R2_Var | |
%ln2lI = load i64* %R3_Var | |
%ln2lJ = load i64* %R4_Var | |
%ln2lK = load i64* %R5_Var | |
%ln2lL = load i64* %R6_Var | |
%ln2lM = load i64* %SpLim_Var | |
%ln2lN = load float* %F1_Var | |
%ln2lO = load float* %F2_Var | |
%ln2lP = load float* %F3_Var | |
%ln2lQ = load float* %F4_Var | |
%ln2lR = load double* %D1_Var | |
%ln2lS = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @r26o_info( i64* %ln2lD, i64* %ln2lE, i64* %ln2lF, i64 %ln2lG, i64 %ln2lH, i64 %ln2lI, i64 %ln2lJ, i64 %ln2lK, i64 %ln2lL, i64 %ln2lM, float %ln2lN, float %ln2lO, float %ln2lP, float %ln2lQ, double %ln2lR, double %ln2lS ) nounwind | |
ret void | |
c2lj: | |
%ln2lT = load i64** %Base_Var | |
%ln2lU = getelementptr inbounds i64* %ln2lT, i32 -2 | |
%ln2lV = bitcast i64* %ln2lU to i64* | |
%ln2lW = load i64* %ln2lV | |
%ln2lX = inttoptr i64 %ln2lW to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2lY = load i64** %Base_Var | |
%ln2lZ = load i64** %Sp_Var | |
%ln2m0 = load i64** %Hp_Var | |
%ln2m1 = load i64* %R1_Var | |
%ln2m2 = load i64* %R2_Var | |
%ln2m3 = load i64* %R3_Var | |
%ln2m4 = load i64* %R4_Var | |
%ln2m5 = load i64* %R5_Var | |
%ln2m6 = load i64* %R6_Var | |
%ln2m7 = load i64* %SpLim_Var | |
%ln2m8 = load float* %F1_Var | |
%ln2m9 = load float* %F2_Var | |
%ln2ma = load float* %F3_Var | |
%ln2mb = load float* %F4_Var | |
%ln2mc = load double* %D1_Var | |
%ln2md = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2lX( i64* %ln2lY, i64* %ln2lZ, i64* %ln2m0, i64 %ln2m1, i64 %ln2m2, i64 %ln2m3, i64 %ln2m4, i64 %ln2m5, i64 %ln2m6, i64 %ln2m7, float %ln2m8, float %ln2m9, float %ln2ma, float %ln2mb, double %ln2mc, double %ln2md ) nounwind | |
ret void | |
} | |
%s29y_info_struct = type <{i64, i64}> | |
@s29y_info_itable = internal constant %s29y_info_struct<{i64 4294967297, i64 20}>, section "X98A__STRIP,__me11", align 8 | |
define internal cc 10 void @s29y_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me12" | |
{ | |
c2ni: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2nj = load i64** %Sp_Var | |
%ln2nk = getelementptr inbounds i64* %ln2nj, i32 -2 | |
%ln2nl = ptrtoint i64* %ln2nk to i64 | |
%ln2nm = load i64* %SpLim_Var | |
%ln2nn = icmp ult i64 %ln2nl, %ln2nm | |
br i1 %ln2nn, label %c2np, label %n2nq | |
n2nq: | |
%ln2nr = ptrtoint [0 x i64]* @stg_upd_frame_info to i64 | |
%ln2ns = load i64** %Sp_Var | |
%ln2nt = getelementptr inbounds i64* %ln2ns, i32 -2 | |
store i64 %ln2nr, i64* %ln2nt | |
%ln2nu = load i64* %R1_Var | |
%ln2nv = load i64** %Sp_Var | |
%ln2nw = getelementptr inbounds i64* %ln2nv, i32 -1 | |
store i64 %ln2nu, i64* %ln2nw | |
%ln2nx = load i64* %R1_Var | |
%ln2ny = add i64 %ln2nx, 16 | |
%ln2nz = inttoptr i64 %ln2ny to i64* | |
%ln2nA = load i64* %ln2nz | |
store i64 %ln2nA, i64* %R2_Var | |
%ln2nB = load i64* %R1_Var | |
%ln2nC = add i64 %ln2nB, 24 | |
%ln2nD = inttoptr i64 %ln2nC to i64* | |
%ln2nE = load i64* %ln2nD | |
store i64 %ln2nE, i64* %R3_Var | |
%ln2nF = load i64** %Sp_Var | |
%ln2nG = getelementptr inbounds i64* %ln2nF, i32 -2 | |
%ln2nH = ptrtoint i64* %ln2nG to i64 | |
%ln2nI = inttoptr i64 %ln2nH to i64* | |
store i64* %ln2nI, i64** %Sp_Var | |
%ln2nJ = load i64** %Base_Var | |
%ln2nK = load i64** %Sp_Var | |
%ln2nL = load i64** %Hp_Var | |
%ln2nM = load i64* %R1_Var | |
%ln2nN = load i64* %R2_Var | |
%ln2nO = load i64* %R3_Var | |
%ln2nP = load i64* %R4_Var | |
%ln2nQ = load i64* %R5_Var | |
%ln2nR = load i64* %R6_Var | |
%ln2nS = load i64* %SpLim_Var | |
%ln2nT = load float* %F1_Var | |
%ln2nU = load float* %F2_Var | |
%ln2nV = load float* %F3_Var | |
%ln2nW = load float* %F4_Var | |
%ln2nX = load double* %D1_Var | |
%ln2nY = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @r26o_info( i64* %ln2nJ, i64* %ln2nK, i64* %ln2nL, i64 %ln2nM, i64 %ln2nN, i64 %ln2nO, i64 %ln2nP, i64 %ln2nQ, i64 %ln2nR, i64 %ln2nS, float %ln2nT, float %ln2nU, float %ln2nV, float %ln2nW, double %ln2nX, double %ln2nY ) nounwind | |
ret void | |
c2np: | |
%ln2nZ = load i64** %Base_Var | |
%ln2o0 = getelementptr inbounds i64* %ln2nZ, i32 -2 | |
%ln2o1 = bitcast i64* %ln2o0 to i64* | |
%ln2o2 = load i64* %ln2o1 | |
%ln2o3 = inttoptr i64 %ln2o2 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2o4 = load i64** %Base_Var | |
%ln2o5 = load i64** %Sp_Var | |
%ln2o6 = load i64** %Hp_Var | |
%ln2o7 = load i64* %R1_Var | |
%ln2o8 = load i64* %R2_Var | |
%ln2o9 = load i64* %R3_Var | |
%ln2oa = load i64* %R4_Var | |
%ln2ob = load i64* %R5_Var | |
%ln2oc = load i64* %R6_Var | |
%ln2od = load i64* %SpLim_Var | |
%ln2oe = load float* %F1_Var | |
%ln2of = load float* %F2_Var | |
%ln2og = load float* %F3_Var | |
%ln2oh = load float* %F4_Var | |
%ln2oi = load double* %D1_Var | |
%ln2oj = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2o3( i64* %ln2o4, i64* %ln2o5, i64* %ln2o6, i64 %ln2o7, i64 %ln2o8, i64 %ln2o9, i64 %ln2oa, i64 %ln2ob, i64 %ln2oc, i64 %ln2od, float %ln2oe, float %ln2of, float %ln2og, float %ln2oh, double %ln2oi, double %ln2oj ) nounwind | |
ret void | |
} | |
%s26S_ret_struct = type <{i64, i64}> | |
@s26S_info_itable = internal constant %s26S_ret_struct<{i64 259, i64 32}>, section "X98A__STRIP,__me13", align 8 | |
define internal cc 10 void @s26S_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me14" | |
{ | |
c2r4: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2oG = alloca i64, i32 1 | |
%ln2r5 = load i64** %Hp_Var | |
%ln2r6 = getelementptr inbounds i64* %ln2r5, i32 8 | |
%ln2r7 = ptrtoint i64* %ln2r6 to i64 | |
%ln2r8 = inttoptr i64 %ln2r7 to i64* | |
store i64* %ln2r8, i64** %Hp_Var | |
%ln2r9 = load i64** %Hp_Var | |
%ln2ra = ptrtoint i64* %ln2r9 to i64 | |
%ln2rb = load i64** %Base_Var | |
%ln2rc = getelementptr inbounds i64* %ln2rb, i32 18 | |
%ln2rd = bitcast i64* %ln2rc to i64* | |
%ln2re = load i64* %ln2rd | |
%ln2rf = icmp ugt i64 %ln2ra, %ln2re | |
br i1 %ln2rf, label %c2ri, label %n2rj | |
n2rj: | |
%ln2rk = load i64** %Sp_Var | |
%ln2rl = getelementptr inbounds i64* %ln2rk, i32 3 | |
%ln2rm = bitcast i64* %ln2rl to i64* | |
%ln2rn = load i64* %ln2rm | |
%ln2ro = load i64* %R1_Var | |
%ln2rp = add i64 %ln2ro, 7 | |
%ln2rq = inttoptr i64 %ln2rp to i64* | |
%ln2rr = load i64* %ln2rq | |
%ln2rs = icmp slt i64 %ln2rn, %ln2rr | |
%ln2rt = zext i1 %ln2rs to i64 | |
store i64 %ln2rt, i64* %lc2oG | |
%ln2ru = load i64* %lc2oG | |
%ln2rv = icmp uge i64 %ln2ru, 1 | |
br i1 %ln2rv, label %c2rx, label %n2ry | |
n2ry: | |
%ln2rz = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29w_info to i64 | |
%ln2rA = load i64** %Hp_Var | |
%ln2rB = getelementptr inbounds i64* %ln2rA, i32 -7 | |
store i64 %ln2rz, i64* %ln2rB | |
%ln2rC = load i64** %Sp_Var | |
%ln2rD = getelementptr inbounds i64* %ln2rC, i32 1 | |
%ln2rE = bitcast i64* %ln2rD to i64* | |
%ln2rF = load i64* %ln2rE | |
%ln2rG = load i64** %Hp_Var | |
%ln2rH = getelementptr inbounds i64* %ln2rG, i32 -5 | |
store i64 %ln2rF, i64* %ln2rH | |
%ln2rI = load i64** %Sp_Var | |
%ln2rJ = getelementptr inbounds i64* %ln2rI, i32 3 | |
%ln2rK = bitcast i64* %ln2rJ to i64* | |
%ln2rL = load i64* %ln2rK | |
%ln2rM = load i64** %Hp_Var | |
%ln2rN = getelementptr inbounds i64* %ln2rM, i32 -4 | |
store i64 %ln2rL, i64* %ln2rN | |
%ln2rO = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln2rP = load i64** %Hp_Var | |
%ln2rQ = getelementptr inbounds i64* %ln2rP, i32 -3 | |
store i64 %ln2rO, i64* %ln2rQ | |
%ln2rR = load i64** %Sp_Var | |
%ln2rS = getelementptr inbounds i64* %ln2rR, i32 2 | |
%ln2rT = bitcast i64* %ln2rS to i64* | |
%ln2rU = load i64* %ln2rT | |
%ln2rV = load i64** %Hp_Var | |
%ln2rW = getelementptr inbounds i64* %ln2rV, i32 -2 | |
store i64 %ln2rU, i64* %ln2rW | |
%ln2rX = load i64* %R1_Var | |
%ln2rY = load i64** %Hp_Var | |
%ln2rZ = getelementptr inbounds i64* %ln2rY, i32 -1 | |
store i64 %ln2rX, i64* %ln2rZ | |
%ln2s0 = load i64** %Hp_Var | |
%ln2s1 = getelementptr inbounds i64* %ln2s0, i32 -7 | |
%ln2s2 = ptrtoint i64* %ln2s1 to i64 | |
%ln2s3 = load i64** %Hp_Var | |
%ln2s4 = getelementptr inbounds i64* %ln2s3, i32 0 | |
store i64 %ln2s2, i64* %ln2s4 | |
%ln2s5 = load i64** %Hp_Var | |
%ln2s6 = ptrtoint i64* %ln2s5 to i64 | |
%ln2s7 = add i64 %ln2s6, -22 | |
store i64 %ln2s7, i64* %R1_Var | |
%ln2s8 = load i64** %Sp_Var | |
%ln2s9 = getelementptr inbounds i64* %ln2s8, i32 4 | |
%ln2sa = ptrtoint i64* %ln2s9 to i64 | |
%ln2sb = inttoptr i64 %ln2sa to i64* | |
store i64* %ln2sb, i64** %Sp_Var | |
%ln2sc = load i64** %Sp_Var | |
%ln2sd = getelementptr inbounds i64* %ln2sc, i32 0 | |
%ln2se = bitcast i64* %ln2sd to i64* | |
%ln2sf = load i64* %ln2se | |
%ln2sg = inttoptr i64 %ln2sf to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2sh = load i64** %Base_Var | |
%ln2si = load i64** %Sp_Var | |
%ln2sj = load i64** %Hp_Var | |
%ln2sk = load i64* %R1_Var | |
%ln2sl = load i64* %R2_Var | |
%ln2sm = load i64* %R3_Var | |
%ln2sn = load i64* %R4_Var | |
%ln2so = load i64* %R5_Var | |
%ln2sp = load i64* %R6_Var | |
%ln2sq = load i64* %SpLim_Var | |
%ln2sr = load float* %F1_Var | |
%ln2ss = load float* %F2_Var | |
%ln2st = load float* %F3_Var | |
%ln2su = load float* %F4_Var | |
%ln2sv = load double* %D1_Var | |
%ln2sw = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2sg( i64* %ln2sh, i64* %ln2si, i64* %ln2sj, i64 %ln2sk, i64 %ln2sl, i64 %ln2sm, i64 %ln2sn, i64 %ln2so, i64 %ln2sp, i64 %ln2sq, float %ln2sr, float %ln2ss, float %ln2st, float %ln2su, double %ln2sv, double %ln2sw ) nounwind | |
ret void | |
c2sx: | |
%ln2sy = load i64** %Base_Var | |
%ln2sz = getelementptr inbounds i64* %ln2sy, i32 -2 | |
%ln2sA = bitcast i64* %ln2sz to i64* | |
%ln2sB = load i64* %ln2sA | |
%ln2sC = inttoptr i64 %ln2sB to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2sD = load i64** %Base_Var | |
%ln2sE = load i64** %Sp_Var | |
%ln2sF = load i64** %Hp_Var | |
%ln2sG = load i64* %R1_Var | |
%ln2sH = load i64* %R2_Var | |
%ln2sI = load i64* %R3_Var | |
%ln2sJ = load i64* %R4_Var | |
%ln2sK = load i64* %R5_Var | |
%ln2sL = load i64* %R6_Var | |
%ln2sM = load i64* %SpLim_Var | |
%ln2sN = load float* %F1_Var | |
%ln2sO = load float* %F2_Var | |
%ln2sP = load float* %F3_Var | |
%ln2sQ = load float* %F4_Var | |
%ln2sR = load double* %D1_Var | |
%ln2sS = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2sC( i64* %ln2sD, i64* %ln2sE, i64* %ln2sF, i64 %ln2sG, i64 %ln2sH, i64 %ln2sI, i64 %ln2sJ, i64 %ln2sK, i64 %ln2sL, i64 %ln2sM, float %ln2sN, float %ln2sO, float %ln2sP, float %ln2sQ, double %ln2sR, double %ln2sS ) nounwind | |
ret void | |
c2ri: | |
%ln2sT = load i64** %Base_Var | |
%ln2sU = getelementptr inbounds i64* %ln2sT, i32 24 | |
store i64 64, i64* %ln2sU | |
br label %c2sx | |
c2rx: | |
%ln2sV = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29y_info to i64 | |
%ln2sW = load i64** %Hp_Var | |
%ln2sX = getelementptr inbounds i64* %ln2sW, i32 -7 | |
store i64 %ln2sV, i64* %ln2sX | |
%ln2sY = load i64** %Sp_Var | |
%ln2sZ = getelementptr inbounds i64* %ln2sY, i32 2 | |
%ln2t0 = bitcast i64* %ln2sZ to i64* | |
%ln2t1 = load i64* %ln2t0 | |
%ln2t2 = load i64** %Hp_Var | |
%ln2t3 = getelementptr inbounds i64* %ln2t2, i32 -5 | |
store i64 %ln2t1, i64* %ln2t3 | |
%ln2t4 = load i64** %Sp_Var | |
%ln2t5 = getelementptr inbounds i64* %ln2t4, i32 3 | |
%ln2t6 = bitcast i64* %ln2t5 to i64* | |
%ln2t7 = load i64* %ln2t6 | |
%ln2t8 = load i64** %Hp_Var | |
%ln2t9 = getelementptr inbounds i64* %ln2t8, i32 -4 | |
store i64 %ln2t7, i64* %ln2t9 | |
%ln2ta = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln2tb = load i64** %Hp_Var | |
%ln2tc = getelementptr inbounds i64* %ln2tb, i32 -3 | |
store i64 %ln2ta, i64* %ln2tc | |
%ln2td = load i64** %Hp_Var | |
%ln2te = getelementptr inbounds i64* %ln2td, i32 -7 | |
%ln2tf = ptrtoint i64* %ln2te to i64 | |
%ln2tg = load i64** %Hp_Var | |
%ln2th = getelementptr inbounds i64* %ln2tg, i32 -2 | |
store i64 %ln2tf, i64* %ln2th | |
%ln2ti = load i64* %R1_Var | |
%ln2tj = load i64** %Hp_Var | |
%ln2tk = getelementptr inbounds i64* %ln2tj, i32 -1 | |
store i64 %ln2ti, i64* %ln2tk | |
%ln2tl = load i64** %Sp_Var | |
%ln2tm = getelementptr inbounds i64* %ln2tl, i32 1 | |
%ln2tn = bitcast i64* %ln2tm to i64* | |
%ln2to = load i64* %ln2tn | |
%ln2tp = load i64** %Hp_Var | |
%ln2tq = getelementptr inbounds i64* %ln2tp, i32 0 | |
store i64 %ln2to, i64* %ln2tq | |
%ln2tr = load i64** %Hp_Var | |
%ln2ts = ptrtoint i64* %ln2tr to i64 | |
%ln2tt = add i64 %ln2ts, -22 | |
store i64 %ln2tt, i64* %R1_Var | |
%ln2tu = load i64** %Sp_Var | |
%ln2tv = getelementptr inbounds i64* %ln2tu, i32 4 | |
%ln2tw = ptrtoint i64* %ln2tv to i64 | |
%ln2tx = inttoptr i64 %ln2tw to i64* | |
store i64* %ln2tx, i64** %Sp_Var | |
%ln2ty = load i64** %Sp_Var | |
%ln2tz = getelementptr inbounds i64* %ln2ty, i32 0 | |
%ln2tA = bitcast i64* %ln2tz to i64* | |
%ln2tB = load i64* %ln2tA | |
%ln2tC = inttoptr i64 %ln2tB to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2tD = load i64** %Base_Var | |
%ln2tE = load i64** %Sp_Var | |
%ln2tF = load i64** %Hp_Var | |
%ln2tG = load i64* %R1_Var | |
%ln2tH = load i64* %R2_Var | |
%ln2tI = load i64* %R3_Var | |
%ln2tJ = load i64* %R4_Var | |
%ln2tK = load i64* %R5_Var | |
%ln2tL = load i64* %R6_Var | |
%ln2tM = load i64* %SpLim_Var | |
%ln2tN = load float* %F1_Var | |
%ln2tO = load float* %F2_Var | |
%ln2tP = load float* %F3_Var | |
%ln2tQ = load float* %F4_Var | |
%ln2tR = load double* %D1_Var | |
%ln2tS = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2tC( i64* %ln2tD, i64* %ln2tE, i64* %ln2tF, i64 %ln2tG, i64 %ln2tH, i64 %ln2tI, i64 %ln2tJ, i64 %ln2tK, i64 %ln2tL, i64 %ln2tM, float %ln2tN, float %ln2tO, float %ln2tP, float %ln2tQ, double %ln2tR, double %ln2tS ) nounwind | |
ret void | |
} | |
%s29v_ret_struct = type <{i64, i64}> | |
@s29v_info_itable = internal constant %s29v_ret_struct<{i64 65, i64 32}>, section "X98A__STRIP,__me15", align 8 | |
define internal cc 10 void @s29v_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me16" | |
{ | |
c2wt: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2tW = alloca i64, i32 1 | |
%ln2wu = load i64* %R1_Var | |
%ln2wv = and i64 %ln2wu, 7 | |
store i64 %ln2wv, i64* %lc2tW | |
%ln2ww = load i64* %lc2tW | |
%ln2wx = icmp uge i64 %ln2ww, 2 | |
br i1 %ln2wx, label %c2wy, label %n2wz | |
n2wz: | |
%ln2wA = load i64** %Hp_Var | |
%ln2wB = getelementptr inbounds i64* %ln2wA, i32 6 | |
%ln2wC = ptrtoint i64* %ln2wB to i64 | |
%ln2wD = inttoptr i64 %ln2wC to i64* | |
store i64* %ln2wD, i64** %Hp_Var | |
%ln2wE = load i64** %Hp_Var | |
%ln2wF = ptrtoint i64* %ln2wE to i64 | |
%ln2wG = load i64** %Base_Var | |
%ln2wH = getelementptr inbounds i64* %ln2wG, i32 18 | |
%ln2wI = bitcast i64* %ln2wH to i64* | |
%ln2wJ = load i64* %ln2wI | |
%ln2wK = icmp ugt i64 %ln2wF, %ln2wJ | |
br i1 %ln2wK, label %c2wO, label %n2wP | |
n2wP: | |
%ln2wQ = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_Izh_con_info to i64 | |
%ln2wR = load i64** %Hp_Var | |
%ln2wS = getelementptr inbounds i64* %ln2wR, i32 -5 | |
store i64 %ln2wQ, i64* %ln2wS | |
%ln2wT = load i64** %Sp_Var | |
%ln2wU = getelementptr inbounds i64* %ln2wT, i32 1 | |
%ln2wV = bitcast i64* %ln2wU to i64* | |
%ln2wW = load i64* %ln2wV | |
%ln2wX = load i64** %Hp_Var | |
%ln2wY = getelementptr inbounds i64* %ln2wX, i32 -4 | |
store i64 %ln2wW, i64* %ln2wY | |
%ln2wZ = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln2x0 = load i64** %Hp_Var | |
%ln2x1 = getelementptr inbounds i64* %ln2x0, i32 -3 | |
store i64 %ln2wZ, i64* %ln2x1 | |
%ln2x2 = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln2x3 = add i64 %ln2x2, 1 | |
%ln2x4 = load i64** %Hp_Var | |
%ln2x5 = getelementptr inbounds i64* %ln2x4, i32 -2 | |
store i64 %ln2x3, i64* %ln2x5 | |
%ln2x6 = load i64** %Hp_Var | |
%ln2x7 = ptrtoint i64* %ln2x6 to i64 | |
%ln2x8 = add i64 %ln2x7, -39 | |
%ln2x9 = load i64** %Hp_Var | |
%ln2xa = getelementptr inbounds i64* %ln2x9, i32 -1 | |
store i64 %ln2x8, i64* %ln2xa | |
%ln2xb = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln2xc = add i64 %ln2xb, 1 | |
%ln2xd = load i64** %Hp_Var | |
%ln2xe = getelementptr inbounds i64* %ln2xd, i32 0 | |
store i64 %ln2xc, i64* %ln2xe | |
%ln2xf = load i64** %Hp_Var | |
%ln2xg = ptrtoint i64* %ln2xf to i64 | |
%ln2xh = add i64 %ln2xg, -22 | |
store i64 %ln2xh, i64* %R1_Var | |
%ln2xi = load i64** %Sp_Var | |
%ln2xj = getelementptr inbounds i64* %ln2xi, i32 2 | |
%ln2xk = ptrtoint i64* %ln2xj to i64 | |
%ln2xl = inttoptr i64 %ln2xk to i64* | |
store i64* %ln2xl, i64** %Sp_Var | |
%ln2xm = load i64** %Sp_Var | |
%ln2xn = getelementptr inbounds i64* %ln2xm, i32 0 | |
%ln2xo = bitcast i64* %ln2xn to i64* | |
%ln2xp = load i64* %ln2xo | |
%ln2xq = inttoptr i64 %ln2xp to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2xr = load i64** %Base_Var | |
%ln2xs = load i64** %Sp_Var | |
%ln2xt = load i64** %Hp_Var | |
%ln2xu = load i64* %R1_Var | |
%ln2xv = load i64* %R2_Var | |
%ln2xw = load i64* %R3_Var | |
%ln2xx = load i64* %R4_Var | |
%ln2xy = load i64* %R5_Var | |
%ln2xz = load i64* %R6_Var | |
%ln2xA = load i64* %SpLim_Var | |
%ln2xB = load float* %F1_Var | |
%ln2xC = load float* %F2_Var | |
%ln2xD = load float* %F3_Var | |
%ln2xE = load float* %F4_Var | |
%ln2xF = load double* %D1_Var | |
%ln2xG = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2xq( i64* %ln2xr, i64* %ln2xs, i64* %ln2xt, i64 %ln2xu, i64 %ln2xv, i64 %ln2xw, i64 %ln2xx, i64 %ln2xy, i64 %ln2xz, i64 %ln2xA, float %ln2xB, float %ln2xC, float %ln2xD, float %ln2xE, double %ln2xF, double %ln2xG ) nounwind | |
ret void | |
c2wy: | |
%ln2xH = load i64* %R1_Var | |
%ln2xI = add i64 %ln2xH, 22 | |
%ln2xJ = inttoptr i64 %ln2xI to i64* | |
%ln2xK = load i64* %ln2xJ | |
%ln2xL = load i64** %Sp_Var | |
%ln2xM = getelementptr inbounds i64* %ln2xL, i32 -1 | |
store i64 %ln2xK, i64* %ln2xM | |
%ln2xN = load i64* %R1_Var | |
%ln2xO = add i64 %ln2xN, 6 | |
%ln2xP = inttoptr i64 %ln2xO to i64* | |
%ln2xQ = load i64* %ln2xP | |
%ln2xR = load i64** %Sp_Var | |
%ln2xS = getelementptr inbounds i64* %ln2xR, i32 0 | |
store i64 %ln2xQ, i64* %ln2xS | |
%ln2xT = load i64* %R1_Var | |
%ln2xU = add i64 %ln2xT, 14 | |
%ln2xV = inttoptr i64 %ln2xU to i64* | |
%ln2xW = load i64* %ln2xV | |
store i64 %ln2xW, i64* %R1_Var | |
%ln2xX = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s26S_info to i64 | |
%ln2xY = load i64** %Sp_Var | |
%ln2xZ = getelementptr inbounds i64* %ln2xY, i32 -2 | |
store i64 %ln2xX, i64* %ln2xZ | |
%ln2y0 = load i64** %Sp_Var | |
%ln2y1 = getelementptr inbounds i64* %ln2y0, i32 -2 | |
%ln2y2 = ptrtoint i64* %ln2y1 to i64 | |
%ln2y3 = inttoptr i64 %ln2y2 to i64* | |
store i64* %ln2y3, i64** %Sp_Var | |
%ln2y4 = load i64* %R1_Var | |
%ln2y5 = and i64 %ln2y4, 7 | |
%ln2y6 = icmp ne i64 %ln2y5, 0 | |
br i1 %ln2y6, label %c2y9, label %n2ya | |
n2ya: | |
%ln2yb = load i64* %R1_Var | |
%ln2yc = inttoptr i64 %ln2yb to i64* | |
%ln2yd = load i64* %ln2yc | |
%ln2ye = inttoptr i64 %ln2yd to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2yf = load i64** %Base_Var | |
%ln2yg = load i64** %Sp_Var | |
%ln2yh = load i64** %Hp_Var | |
%ln2yi = load i64* %R1_Var | |
%ln2yj = load i64* %R2_Var | |
%ln2yk = load i64* %R3_Var | |
%ln2yl = load i64* %R4_Var | |
%ln2ym = load i64* %R5_Var | |
%ln2yn = load i64* %R6_Var | |
%ln2yo = load i64* %SpLim_Var | |
%ln2yp = load float* %F1_Var | |
%ln2yq = load float* %F2_Var | |
%ln2yr = load float* %F3_Var | |
%ln2ys = load float* %F4_Var | |
%ln2yt = load double* %D1_Var | |
%ln2yu = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2ye( i64* %ln2yf, i64* %ln2yg, i64* %ln2yh, i64 %ln2yi, i64 %ln2yj, i64 %ln2yk, i64 %ln2yl, i64 %ln2ym, i64 %ln2yn, i64 %ln2yo, float %ln2yp, float %ln2yq, float %ln2yr, float %ln2ys, double %ln2yt, double %ln2yu ) nounwind | |
ret void | |
c2y9: | |
%ln2yv = load i64** %Base_Var | |
%ln2yw = load i64** %Sp_Var | |
%ln2yx = load i64** %Hp_Var | |
%ln2yy = load i64* %R1_Var | |
%ln2yz = load i64* %R2_Var | |
%ln2yA = load i64* %R3_Var | |
%ln2yB = load i64* %R4_Var | |
%ln2yC = load i64* %R5_Var | |
%ln2yD = load i64* %R6_Var | |
%ln2yE = load i64* %SpLim_Var | |
%ln2yF = load float* %F1_Var | |
%ln2yG = load float* %F2_Var | |
%ln2yH = load float* %F3_Var | |
%ln2yI = load float* %F4_Var | |
%ln2yJ = load double* %D1_Var | |
%ln2yK = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s26S_info( i64* %ln2yv, i64* %ln2yw, i64* %ln2yx, i64 %ln2yy, i64 %ln2yz, i64 %ln2yA, i64 %ln2yB, i64 %ln2yC, i64 %ln2yD, i64 %ln2yE, float %ln2yF, float %ln2yG, float %ln2yH, float %ln2yI, double %ln2yJ, double %ln2yK ) nounwind | |
ret void | |
c2yL: | |
%ln2yM = load i64** %Base_Var | |
%ln2yN = getelementptr inbounds i64* %ln2yM, i32 -2 | |
%ln2yO = bitcast i64* %ln2yN to i64* | |
%ln2yP = load i64* %ln2yO | |
%ln2yQ = inttoptr i64 %ln2yP to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2yR = load i64** %Base_Var | |
%ln2yS = load i64** %Sp_Var | |
%ln2yT = load i64** %Hp_Var | |
%ln2yU = load i64* %R1_Var | |
%ln2yV = load i64* %R2_Var | |
%ln2yW = load i64* %R3_Var | |
%ln2yX = load i64* %R4_Var | |
%ln2yY = load i64* %R5_Var | |
%ln2yZ = load i64* %R6_Var | |
%ln2z0 = load i64* %SpLim_Var | |
%ln2z1 = load float* %F1_Var | |
%ln2z2 = load float* %F2_Var | |
%ln2z3 = load float* %F3_Var | |
%ln2z4 = load float* %F4_Var | |
%ln2z5 = load double* %D1_Var | |
%ln2z6 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2yQ( i64* %ln2yR, i64* %ln2yS, i64* %ln2yT, i64 %ln2yU, i64 %ln2yV, i64 %ln2yW, i64 %ln2yX, i64 %ln2yY, i64 %ln2yZ, i64 %ln2z0, float %ln2z1, float %ln2z2, float %ln2z3, float %ln2z4, double %ln2z5, double %ln2z6 ) nounwind | |
ret void | |
c2wO: | |
%ln2z7 = load i64** %Base_Var | |
%ln2z8 = getelementptr inbounds i64* %ln2z7, i32 24 | |
store i64 48, i64* %ln2z8 | |
br label %c2yL | |
} | |
@ghczmprim_GHCziTypes_Izh_con_info = external global [0 x i64] | |
%r26o_info_struct = type <{i64, i64, i64}> | |
@r26o_info_itable = internal constant %r26o_info_struct<{i64 8589934603, i64 0, i64 15}>, section "X98A__STRIP,__me17", align 8 | |
define internal cc 10 void @r26o_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me18" | |
{ | |
c2Ar: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2As = load i64** %Sp_Var | |
%ln2At = getelementptr inbounds i64* %ln2As, i32 -4 | |
%ln2Au = ptrtoint i64* %ln2At to i64 | |
%ln2Av = load i64* %SpLim_Var | |
%ln2Aw = icmp ult i64 %ln2Au, %ln2Av | |
br i1 %ln2Aw, label %c2Ay, label %n2Az | |
n2Az: | |
%ln2AA = load i64* %R3_Var | |
%ln2AB = load i64** %Sp_Var | |
%ln2AC = getelementptr inbounds i64* %ln2AB, i32 -1 | |
store i64 %ln2AA, i64* %ln2AC | |
%ln2AD = load i64* %R2_Var | |
store i64 %ln2AD, i64* %R1_Var | |
%ln2AE = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29v_info to i64 | |
%ln2AF = load i64** %Sp_Var | |
%ln2AG = getelementptr inbounds i64* %ln2AF, i32 -2 | |
store i64 %ln2AE, i64* %ln2AG | |
%ln2AH = load i64** %Sp_Var | |
%ln2AI = getelementptr inbounds i64* %ln2AH, i32 -2 | |
%ln2AJ = ptrtoint i64* %ln2AI to i64 | |
%ln2AK = inttoptr i64 %ln2AJ to i64* | |
store i64* %ln2AK, i64** %Sp_Var | |
%ln2AL = load i64* %R1_Var | |
%ln2AM = and i64 %ln2AL, 7 | |
%ln2AN = icmp ne i64 %ln2AM, 0 | |
br i1 %ln2AN, label %c2AQ, label %n2AR | |
n2AR: | |
%ln2AS = load i64* %R1_Var | |
%ln2AT = inttoptr i64 %ln2AS to i64* | |
%ln2AU = load i64* %ln2AT | |
%ln2AV = inttoptr i64 %ln2AU to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2AW = load i64** %Base_Var | |
%ln2AX = load i64** %Sp_Var | |
%ln2AY = load i64** %Hp_Var | |
%ln2AZ = load i64* %R1_Var | |
%ln2B0 = load i64* %R2_Var | |
%ln2B1 = load i64* %R3_Var | |
%ln2B2 = load i64* %R4_Var | |
%ln2B3 = load i64* %R5_Var | |
%ln2B4 = load i64* %R6_Var | |
%ln2B5 = load i64* %SpLim_Var | |
%ln2B6 = load float* %F1_Var | |
%ln2B7 = load float* %F2_Var | |
%ln2B8 = load float* %F3_Var | |
%ln2B9 = load float* %F4_Var | |
%ln2Ba = load double* %D1_Var | |
%ln2Bb = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2AV( i64* %ln2AW, i64* %ln2AX, i64* %ln2AY, i64 %ln2AZ, i64 %ln2B0, i64 %ln2B1, i64 %ln2B2, i64 %ln2B3, i64 %ln2B4, i64 %ln2B5, float %ln2B6, float %ln2B7, float %ln2B8, float %ln2B9, double %ln2Ba, double %ln2Bb ) nounwind | |
ret void | |
c2Ay: | |
%ln2Bc = ptrtoint %r26o_closure_struct* @r26o_closure to i64 | |
store i64 %ln2Bc, i64* %R1_Var | |
%ln2Bd = load i64** %Base_Var | |
%ln2Be = getelementptr inbounds i64* %ln2Bd, i32 -1 | |
%ln2Bf = bitcast i64* %ln2Be to i64* | |
%ln2Bg = load i64* %ln2Bf | |
%ln2Bh = inttoptr i64 %ln2Bg to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2Bi = load i64** %Base_Var | |
%ln2Bj = load i64** %Sp_Var | |
%ln2Bk = load i64** %Hp_Var | |
%ln2Bl = load i64* %R1_Var | |
%ln2Bm = load i64* %R2_Var | |
%ln2Bn = load i64* %R3_Var | |
%ln2Bo = load i64* %R4_Var | |
%ln2Bp = load i64* %R5_Var | |
%ln2Bq = load i64* %R6_Var | |
%ln2Br = load i64* %SpLim_Var | |
%ln2Bs = load float* %F1_Var | |
%ln2Bt = load float* %F2_Var | |
%ln2Bu = load float* %F3_Var | |
%ln2Bv = load float* %F4_Var | |
%ln2Bw = load double* %D1_Var | |
%ln2Bx = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2Bh( i64* %ln2Bi, i64* %ln2Bj, i64* %ln2Bk, i64 %ln2Bl, i64 %ln2Bm, i64 %ln2Bn, i64 %ln2Bo, i64 %ln2Bp, i64 %ln2Bq, i64 %ln2Br, float %ln2Bs, float %ln2Bt, float %ln2Bu, float %ln2Bv, double %ln2Bw, double %ln2Bx ) nounwind | |
ret void | |
c2AQ: | |
%ln2By = load i64** %Base_Var | |
%ln2Bz = load i64** %Sp_Var | |
%ln2BA = load i64** %Hp_Var | |
%ln2BB = load i64* %R1_Var | |
%ln2BC = load i64* %R2_Var | |
%ln2BD = load i64* %R3_Var | |
%ln2BE = load i64* %R4_Var | |
%ln2BF = load i64* %R5_Var | |
%ln2BG = load i64* %R6_Var | |
%ln2BH = load i64* %SpLim_Var | |
%ln2BI = load float* %F1_Var | |
%ln2BJ = load float* %F2_Var | |
%ln2BK = load float* %F3_Var | |
%ln2BL = load float* %F4_Var | |
%ln2BM = load double* %D1_Var | |
%ln2BN = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29v_info( i64* %ln2By, i64* %ln2Bz, i64* %ln2BA, i64 %ln2BB, i64 %ln2BC, i64 %ln2BD, i64 %ln2BE, i64 %ln2BF, i64 %ln2BG, i64 %ln2BH, float %ln2BI, float %ln2BJ, float %ln2BK, float %ln2BL, double %ln2BM, double %ln2BN ) nounwind | |
ret void | |
} | |
%s27m_info_struct = type <{i64, i64}> | |
@s27m_info_itable = internal constant %s27m_info_struct<{i64 4294967297, i64 20}>, section "X98A__STRIP,__me19", align 8 | |
define internal cc 10 void @s27m_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me20" | |
{ | |
c2Df: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2Dg = load i64** %Sp_Var | |
%ln2Dh = getelementptr inbounds i64* %ln2Dg, i32 -2 | |
%ln2Di = ptrtoint i64* %ln2Dh to i64 | |
%ln2Dj = load i64* %SpLim_Var | |
%ln2Dk = icmp ult i64 %ln2Di, %ln2Dj | |
br i1 %ln2Dk, label %c2Dm, label %n2Dn | |
n2Dn: | |
%ln2Do = ptrtoint [0 x i64]* @stg_upd_frame_info to i64 | |
%ln2Dp = load i64** %Sp_Var | |
%ln2Dq = getelementptr inbounds i64* %ln2Dp, i32 -2 | |
store i64 %ln2Do, i64* %ln2Dq | |
%ln2Dr = load i64* %R1_Var | |
%ln2Ds = load i64** %Sp_Var | |
%ln2Dt = getelementptr inbounds i64* %ln2Ds, i32 -1 | |
store i64 %ln2Dr, i64* %ln2Dt | |
%ln2Du = load i64* %R1_Var | |
%ln2Dv = add i64 %ln2Du, 16 | |
%ln2Dw = inttoptr i64 %ln2Dv to i64* | |
%ln2Dx = load i64* %ln2Dw | |
store i64 %ln2Dx, i64* %R2_Var | |
%ln2Dy = load i64* %R1_Var | |
%ln2Dz = add i64 %ln2Dy, 24 | |
%ln2DA = inttoptr i64 %ln2Dz to i64* | |
%ln2DB = load i64* %ln2DA | |
store i64 %ln2DB, i64* %R3_Var | |
%ln2DC = load i64** %Sp_Var | |
%ln2DD = getelementptr inbounds i64* %ln2DC, i32 -2 | |
%ln2DE = ptrtoint i64* %ln2DD to i64 | |
%ln2DF = inttoptr i64 %ln2DE to i64* | |
store i64* %ln2DF, i64** %Sp_Var | |
%ln2DG = load i64** %Base_Var | |
%ln2DH = load i64** %Sp_Var | |
%ln2DI = load i64** %Hp_Var | |
%ln2DJ = load i64* %R1_Var | |
%ln2DK = load i64* %R2_Var | |
%ln2DL = load i64* %R3_Var | |
%ln2DM = load i64* %R4_Var | |
%ln2DN = load i64* %R5_Var | |
%ln2DO = load i64* %R6_Var | |
%ln2DP = load i64* %SpLim_Var | |
%ln2DQ = load float* %F1_Var | |
%ln2DR = load float* %F2_Var | |
%ln2DS = load float* %F3_Var | |
%ln2DT = load float* %F4_Var | |
%ln2DU = load double* %D1_Var | |
%ln2DV = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @r26o_info( i64* %ln2DG, i64* %ln2DH, i64* %ln2DI, i64 %ln2DJ, i64 %ln2DK, i64 %ln2DL, i64 %ln2DM, i64 %ln2DN, i64 %ln2DO, i64 %ln2DP, float %ln2DQ, float %ln2DR, float %ln2DS, float %ln2DT, double %ln2DU, double %ln2DV ) nounwind | |
ret void | |
c2Dm: | |
%ln2DW = load i64** %Base_Var | |
%ln2DX = getelementptr inbounds i64* %ln2DW, i32 -2 | |
%ln2DY = bitcast i64* %ln2DX to i64* | |
%ln2DZ = load i64* %ln2DY | |
%ln2E0 = inttoptr i64 %ln2DZ to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2E1 = load i64** %Base_Var | |
%ln2E2 = load i64** %Sp_Var | |
%ln2E3 = load i64** %Hp_Var | |
%ln2E4 = load i64* %R1_Var | |
%ln2E5 = load i64* %R2_Var | |
%ln2E6 = load i64* %R3_Var | |
%ln2E7 = load i64* %R4_Var | |
%ln2E8 = load i64* %R5_Var | |
%ln2E9 = load i64* %R6_Var | |
%ln2Ea = load i64* %SpLim_Var | |
%ln2Eb = load float* %F1_Var | |
%ln2Ec = load float* %F2_Var | |
%ln2Ed = load float* %F3_Var | |
%ln2Ee = load float* %F4_Var | |
%ln2Ef = load double* %D1_Var | |
%ln2Eg = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2E0( i64* %ln2E1, i64* %ln2E2, i64* %ln2E3, i64 %ln2E4, i64 %ln2E5, i64 %ln2E6, i64 %ln2E7, i64 %ln2E8, i64 %ln2E9, i64 %ln2Ea, float %ln2Eb, float %ln2Ec, float %ln2Ed, float %ln2Ee, double %ln2Ef, double %ln2Eg ) nounwind | |
ret void | |
} | |
%s29t_info_struct = type <{i64, i64}> | |
@s29t_info_itable = internal constant %s29t_info_struct<{i64 4294967297, i64 20}>, section "X98A__STRIP,__me21", align 8 | |
define internal cc 10 void @s29t_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me22" | |
{ | |
c2Fl: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2Fm = load i64** %Sp_Var | |
%ln2Fn = getelementptr inbounds i64* %ln2Fm, i32 -2 | |
%ln2Fo = ptrtoint i64* %ln2Fn to i64 | |
%ln2Fp = load i64* %SpLim_Var | |
%ln2Fq = icmp ult i64 %ln2Fo, %ln2Fp | |
br i1 %ln2Fq, label %c2Fs, label %n2Ft | |
n2Ft: | |
%ln2Fu = ptrtoint [0 x i64]* @stg_upd_frame_info to i64 | |
%ln2Fv = load i64** %Sp_Var | |
%ln2Fw = getelementptr inbounds i64* %ln2Fv, i32 -2 | |
store i64 %ln2Fu, i64* %ln2Fw | |
%ln2Fx = load i64* %R1_Var | |
%ln2Fy = load i64** %Sp_Var | |
%ln2Fz = getelementptr inbounds i64* %ln2Fy, i32 -1 | |
store i64 %ln2Fx, i64* %ln2Fz | |
%ln2FA = load i64* %R1_Var | |
%ln2FB = add i64 %ln2FA, 16 | |
%ln2FC = inttoptr i64 %ln2FB to i64* | |
%ln2FD = load i64* %ln2FC | |
store i64 %ln2FD, i64* %R2_Var | |
%ln2FE = load i64* %R1_Var | |
%ln2FF = add i64 %ln2FE, 24 | |
%ln2FG = inttoptr i64 %ln2FF to i64* | |
%ln2FH = load i64* %ln2FG | |
store i64 %ln2FH, i64* %R3_Var | |
%ln2FI = load i64** %Sp_Var | |
%ln2FJ = getelementptr inbounds i64* %ln2FI, i32 -2 | |
%ln2FK = ptrtoint i64* %ln2FJ to i64 | |
%ln2FL = inttoptr i64 %ln2FK to i64* | |
store i64* %ln2FL, i64** %Sp_Var | |
%ln2FM = load i64** %Base_Var | |
%ln2FN = load i64** %Sp_Var | |
%ln2FO = load i64** %Hp_Var | |
%ln2FP = load i64* %R1_Var | |
%ln2FQ = load i64* %R2_Var | |
%ln2FR = load i64* %R3_Var | |
%ln2FS = load i64* %R4_Var | |
%ln2FT = load i64* %R5_Var | |
%ln2FU = load i64* %R6_Var | |
%ln2FV = load i64* %SpLim_Var | |
%ln2FW = load float* %F1_Var | |
%ln2FX = load float* %F2_Var | |
%ln2FY = load float* %F3_Var | |
%ln2FZ = load float* %F4_Var | |
%ln2G0 = load double* %D1_Var | |
%ln2G1 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @r26o_info( i64* %ln2FM, i64* %ln2FN, i64* %ln2FO, i64 %ln2FP, i64 %ln2FQ, i64 %ln2FR, i64 %ln2FS, i64 %ln2FT, i64 %ln2FU, i64 %ln2FV, float %ln2FW, float %ln2FX, float %ln2FY, float %ln2FZ, double %ln2G0, double %ln2G1 ) nounwind | |
ret void | |
c2Fs: | |
%ln2G2 = load i64** %Base_Var | |
%ln2G3 = getelementptr inbounds i64* %ln2G2, i32 -2 | |
%ln2G4 = bitcast i64* %ln2G3 to i64* | |
%ln2G5 = load i64* %ln2G4 | |
%ln2G6 = inttoptr i64 %ln2G5 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2G7 = load i64** %Base_Var | |
%ln2G8 = load i64** %Sp_Var | |
%ln2G9 = load i64** %Hp_Var | |
%ln2Ga = load i64* %R1_Var | |
%ln2Gb = load i64* %R2_Var | |
%ln2Gc = load i64* %R3_Var | |
%ln2Gd = load i64* %R4_Var | |
%ln2Ge = load i64* %R5_Var | |
%ln2Gf = load i64* %R6_Var | |
%ln2Gg = load i64* %SpLim_Var | |
%ln2Gh = load float* %F1_Var | |
%ln2Gi = load float* %F2_Var | |
%ln2Gj = load float* %F3_Var | |
%ln2Gk = load float* %F4_Var | |
%ln2Gl = load double* %D1_Var | |
%ln2Gm = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2G6( i64* %ln2G7, i64* %ln2G8, i64* %ln2G9, i64 %ln2Ga, i64 %ln2Gb, i64 %ln2Gc, i64 %ln2Gd, i64 %ln2Ge, i64 %ln2Gf, i64 %ln2Gg, float %ln2Gh, float %ln2Gi, float %ln2Gj, float %ln2Gk, double %ln2Gl, double %ln2Gm ) nounwind | |
ret void | |
} | |
%s27j_ret_struct = type <{i64, i64}> | |
@s27j_info_itable = internal constant %s27j_ret_struct<{i64 516, i64 32}>, section "X98A__STRIP,__me23", align 8 | |
define internal cc 10 void @s27j_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me24" | |
{ | |
c2J5: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2GJ = alloca i64, i32 1 | |
%ln2J6 = load i64** %Hp_Var | |
%ln2J7 = getelementptr inbounds i64* %ln2J6, i32 8 | |
%ln2J8 = ptrtoint i64* %ln2J7 to i64 | |
%ln2J9 = inttoptr i64 %ln2J8 to i64* | |
store i64* %ln2J9, i64** %Hp_Var | |
%ln2Ja = load i64** %Hp_Var | |
%ln2Jb = ptrtoint i64* %ln2Ja to i64 | |
%ln2Jc = load i64** %Base_Var | |
%ln2Jd = getelementptr inbounds i64* %ln2Jc, i32 18 | |
%ln2Je = bitcast i64* %ln2Jd to i64* | |
%ln2Jf = load i64* %ln2Je | |
%ln2Jg = icmp ugt i64 %ln2Jb, %ln2Jf | |
br i1 %ln2Jg, label %c2Jj, label %n2Jk | |
n2Jk: | |
%ln2Jl = load i64** %Sp_Var | |
%ln2Jm = getelementptr inbounds i64* %ln2Jl, i32 4 | |
%ln2Jn = bitcast i64* %ln2Jm to i64* | |
%ln2Jo = load i64* %ln2Jn | |
%ln2Jp = load i64* %R1_Var | |
%ln2Jq = add i64 %ln2Jp, 7 | |
%ln2Jr = inttoptr i64 %ln2Jq to i64* | |
%ln2Js = load i64* %ln2Jr | |
%ln2Jt = icmp slt i64 %ln2Jo, %ln2Js | |
%ln2Ju = zext i1 %ln2Jt to i64 | |
store i64 %ln2Ju, i64* %lc2GJ | |
%ln2Jv = load i64* %lc2GJ | |
%ln2Jw = icmp uge i64 %ln2Jv, 1 | |
br i1 %ln2Jw, label %c2Jy, label %n2Jz | |
n2Jz: | |
%ln2JA = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s27m_info to i64 | |
%ln2JB = load i64** %Hp_Var | |
%ln2JC = getelementptr inbounds i64* %ln2JB, i32 -7 | |
store i64 %ln2JA, i64* %ln2JC | |
%ln2JD = load i64** %Sp_Var | |
%ln2JE = getelementptr inbounds i64* %ln2JD, i32 1 | |
%ln2JF = bitcast i64* %ln2JE to i64* | |
%ln2JG = load i64* %ln2JF | |
%ln2JH = load i64** %Hp_Var | |
%ln2JI = getelementptr inbounds i64* %ln2JH, i32 -5 | |
store i64 %ln2JG, i64* %ln2JI | |
%ln2JJ = load i64** %Sp_Var | |
%ln2JK = getelementptr inbounds i64* %ln2JJ, i32 4 | |
%ln2JL = bitcast i64* %ln2JK to i64* | |
%ln2JM = load i64* %ln2JL | |
%ln2JN = load i64** %Hp_Var | |
%ln2JO = getelementptr inbounds i64* %ln2JN, i32 -4 | |
store i64 %ln2JM, i64* %ln2JO | |
%ln2JP = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln2JQ = load i64** %Hp_Var | |
%ln2JR = getelementptr inbounds i64* %ln2JQ, i32 -3 | |
store i64 %ln2JP, i64* %ln2JR | |
%ln2JS = load i64** %Sp_Var | |
%ln2JT = getelementptr inbounds i64* %ln2JS, i32 2 | |
%ln2JU = bitcast i64* %ln2JT to i64* | |
%ln2JV = load i64* %ln2JU | |
%ln2JW = load i64** %Hp_Var | |
%ln2JX = getelementptr inbounds i64* %ln2JW, i32 -2 | |
store i64 %ln2JV, i64* %ln2JX | |
%ln2JY = load i64* %R1_Var | |
%ln2JZ = load i64** %Hp_Var | |
%ln2K0 = getelementptr inbounds i64* %ln2JZ, i32 -1 | |
store i64 %ln2JY, i64* %ln2K0 | |
%ln2K1 = load i64** %Hp_Var | |
%ln2K2 = getelementptr inbounds i64* %ln2K1, i32 -7 | |
%ln2K3 = ptrtoint i64* %ln2K2 to i64 | |
%ln2K4 = load i64** %Hp_Var | |
%ln2K5 = getelementptr inbounds i64* %ln2K4, i32 0 | |
store i64 %ln2K3, i64* %ln2K5 | |
%ln2K6 = load i64** %Hp_Var | |
%ln2K7 = ptrtoint i64* %ln2K6 to i64 | |
%ln2K8 = add i64 %ln2K7, -22 | |
store i64 %ln2K8, i64* %R2_Var | |
%ln2K9 = load i64** %Sp_Var | |
%ln2Ka = getelementptr inbounds i64* %ln2K9, i32 3 | |
%ln2Kb = bitcast i64* %ln2Ka to i64* | |
%ln2Kc = load i64* %ln2Kb | |
store i64 %ln2Kc, i64* %R3_Var | |
%ln2Kd = load i64** %Sp_Var | |
%ln2Ke = getelementptr inbounds i64* %ln2Kd, i32 5 | |
%ln2Kf = ptrtoint i64* %ln2Ke to i64 | |
%ln2Kg = inttoptr i64 %ln2Kf to i64* | |
store i64* %ln2Kg, i64** %Sp_Var | |
%ln2Kh = load i64** %Base_Var | |
%ln2Ki = load i64** %Sp_Var | |
%ln2Kj = load i64** %Hp_Var | |
%ln2Kk = load i64* %R1_Var | |
%ln2Kl = load i64* %R2_Var | |
%ln2Km = load i64* %R3_Var | |
%ln2Kn = load i64* %R4_Var | |
%ln2Ko = load i64* %R5_Var | |
%ln2Kp = load i64* %R6_Var | |
%ln2Kq = load i64* %SpLim_Var | |
%ln2Kr = load float* %F1_Var | |
%ln2Ks = load float* %F2_Var | |
%ln2Kt = load float* %F3_Var | |
%ln2Ku = load float* %F4_Var | |
%ln2Kv = load double* %D1_Var | |
%ln2Kw = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_listSortzulgo_info( i64* %ln2Kh, i64* %ln2Ki, i64* %ln2Kj, i64 %ln2Kk, i64 %ln2Kl, i64 %ln2Km, i64 %ln2Kn, i64 %ln2Ko, i64 %ln2Kp, i64 %ln2Kq, float %ln2Kr, float %ln2Ks, float %ln2Kt, float %ln2Ku, double %ln2Kv, double %ln2Kw ) nounwind | |
ret void | |
c2Kx: | |
%ln2Ky = load i64** %Base_Var | |
%ln2Kz = getelementptr inbounds i64* %ln2Ky, i32 -2 | |
%ln2KA = bitcast i64* %ln2Kz to i64* | |
%ln2KB = load i64* %ln2KA | |
%ln2KC = inttoptr i64 %ln2KB to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2KD = load i64** %Base_Var | |
%ln2KE = load i64** %Sp_Var | |
%ln2KF = load i64** %Hp_Var | |
%ln2KG = load i64* %R1_Var | |
%ln2KH = load i64* %R2_Var | |
%ln2KI = load i64* %R3_Var | |
%ln2KJ = load i64* %R4_Var | |
%ln2KK = load i64* %R5_Var | |
%ln2KL = load i64* %R6_Var | |
%ln2KM = load i64* %SpLim_Var | |
%ln2KN = load float* %F1_Var | |
%ln2KO = load float* %F2_Var | |
%ln2KP = load float* %F3_Var | |
%ln2KQ = load float* %F4_Var | |
%ln2KR = load double* %D1_Var | |
%ln2KS = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2KC( i64* %ln2KD, i64* %ln2KE, i64* %ln2KF, i64 %ln2KG, i64 %ln2KH, i64 %ln2KI, i64 %ln2KJ, i64 %ln2KK, i64 %ln2KL, i64 %ln2KM, float %ln2KN, float %ln2KO, float %ln2KP, float %ln2KQ, double %ln2KR, double %ln2KS ) nounwind | |
ret void | |
c2Jj: | |
%ln2KT = load i64** %Base_Var | |
%ln2KU = getelementptr inbounds i64* %ln2KT, i32 24 | |
store i64 64, i64* %ln2KU | |
br label %c2Kx | |
c2Jy: | |
%ln2KV = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29t_info to i64 | |
%ln2KW = load i64** %Hp_Var | |
%ln2KX = getelementptr inbounds i64* %ln2KW, i32 -7 | |
store i64 %ln2KV, i64* %ln2KX | |
%ln2KY = load i64** %Sp_Var | |
%ln2KZ = getelementptr inbounds i64* %ln2KY, i32 2 | |
%ln2L0 = bitcast i64* %ln2KZ to i64* | |
%ln2L1 = load i64* %ln2L0 | |
%ln2L2 = load i64** %Hp_Var | |
%ln2L3 = getelementptr inbounds i64* %ln2L2, i32 -5 | |
store i64 %ln2L1, i64* %ln2L3 | |
%ln2L4 = load i64** %Sp_Var | |
%ln2L5 = getelementptr inbounds i64* %ln2L4, i32 4 | |
%ln2L6 = bitcast i64* %ln2L5 to i64* | |
%ln2L7 = load i64* %ln2L6 | |
%ln2L8 = load i64** %Hp_Var | |
%ln2L9 = getelementptr inbounds i64* %ln2L8, i32 -4 | |
store i64 %ln2L7, i64* %ln2L9 | |
%ln2La = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln2Lb = load i64** %Hp_Var | |
%ln2Lc = getelementptr inbounds i64* %ln2Lb, i32 -3 | |
store i64 %ln2La, i64* %ln2Lc | |
%ln2Ld = load i64** %Hp_Var | |
%ln2Le = getelementptr inbounds i64* %ln2Ld, i32 -7 | |
%ln2Lf = ptrtoint i64* %ln2Le to i64 | |
%ln2Lg = load i64** %Hp_Var | |
%ln2Lh = getelementptr inbounds i64* %ln2Lg, i32 -2 | |
store i64 %ln2Lf, i64* %ln2Lh | |
%ln2Li = load i64* %R1_Var | |
%ln2Lj = load i64** %Hp_Var | |
%ln2Lk = getelementptr inbounds i64* %ln2Lj, i32 -1 | |
store i64 %ln2Li, i64* %ln2Lk | |
%ln2Ll = load i64** %Sp_Var | |
%ln2Lm = getelementptr inbounds i64* %ln2Ll, i32 1 | |
%ln2Ln = bitcast i64* %ln2Lm to i64* | |
%ln2Lo = load i64* %ln2Ln | |
%ln2Lp = load i64** %Hp_Var | |
%ln2Lq = getelementptr inbounds i64* %ln2Lp, i32 0 | |
store i64 %ln2Lo, i64* %ln2Lq | |
%ln2Lr = load i64** %Hp_Var | |
%ln2Ls = ptrtoint i64* %ln2Lr to i64 | |
%ln2Lt = add i64 %ln2Ls, -22 | |
store i64 %ln2Lt, i64* %R2_Var | |
%ln2Lu = load i64** %Sp_Var | |
%ln2Lv = getelementptr inbounds i64* %ln2Lu, i32 3 | |
%ln2Lw = bitcast i64* %ln2Lv to i64* | |
%ln2Lx = load i64* %ln2Lw | |
store i64 %ln2Lx, i64* %R3_Var | |
%ln2Ly = load i64** %Sp_Var | |
%ln2Lz = getelementptr inbounds i64* %ln2Ly, i32 5 | |
%ln2LA = ptrtoint i64* %ln2Lz to i64 | |
%ln2LB = inttoptr i64 %ln2LA to i64* | |
store i64* %ln2LB, i64** %Sp_Var | |
%ln2LC = load i64** %Base_Var | |
%ln2LD = load i64** %Sp_Var | |
%ln2LE = load i64** %Hp_Var | |
%ln2LF = load i64* %R1_Var | |
%ln2LG = load i64* %R2_Var | |
%ln2LH = load i64* %R3_Var | |
%ln2LI = load i64* %R4_Var | |
%ln2LJ = load i64* %R5_Var | |
%ln2LK = load i64* %R6_Var | |
%ln2LL = load i64* %SpLim_Var | |
%ln2LM = load float* %F1_Var | |
%ln2LN = load float* %F2_Var | |
%ln2LO = load float* %F3_Var | |
%ln2LP = load float* %F4_Var | |
%ln2LQ = load double* %D1_Var | |
%ln2LR = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_listSortzulgo_info( i64* %ln2LC, i64* %ln2LD, i64* %ln2LE, i64 %ln2LF, i64 %ln2LG, i64 %ln2LH, i64 %ln2LI, i64 %ln2LJ, i64 %ln2LK, i64 %ln2LL, float %ln2LM, float %ln2LN, float %ln2LO, float %ln2LP, double %ln2LQ, double %ln2LR ) nounwind | |
ret void | |
} | |
%s29r_ret_struct = type <{i64, i64}> | |
@s29r_info_itable = internal constant %s29r_ret_struct<{i64 4, i64 32}>, section "X98A__STRIP,__me25", align 8 | |
define internal cc 10 void @s29r_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me26" | |
{ | |
c2MO: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2LY = alloca i64, i32 1 | |
%ln2MP = load i64** %Sp_Var | |
%ln2MQ = getelementptr inbounds i64* %ln2MP, i32 4 | |
%ln2MR = bitcast i64* %ln2MQ to i64* | |
%ln2MS = load i64* %ln2MR | |
store i64 %ln2MS, i64* %lc2LY | |
%ln2MT = load i64* %R1_Var | |
%ln2MU = add i64 %ln2MT, 7 | |
%ln2MV = inttoptr i64 %ln2MU to i64* | |
%ln2MW = load i64* %ln2MV | |
%ln2MX = load i64** %Sp_Var | |
%ln2MY = getelementptr inbounds i64* %ln2MX, i32 4 | |
store i64 %ln2MW, i64* %ln2MY | |
%ln2MZ = load i64* %lc2LY | |
store i64 %ln2MZ, i64* %R1_Var | |
%ln2N0 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s27j_info to i64 | |
%ln2N1 = load i64** %Sp_Var | |
%ln2N2 = getelementptr inbounds i64* %ln2N1, i32 0 | |
store i64 %ln2N0, i64* %ln2N2 | |
%ln2N3 = load i64* %R1_Var | |
%ln2N4 = and i64 %ln2N3, 7 | |
%ln2N5 = icmp ne i64 %ln2N4, 0 | |
br i1 %ln2N5, label %c2N7, label %n2N8 | |
n2N8: | |
%ln2N9 = load i64* %R1_Var | |
%ln2Na = inttoptr i64 %ln2N9 to i64* | |
%ln2Nb = load i64* %ln2Na | |
%ln2Nc = inttoptr i64 %ln2Nb to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2Nd = load i64** %Base_Var | |
%ln2Ne = load i64** %Sp_Var | |
%ln2Nf = load i64** %Hp_Var | |
%ln2Ng = load i64* %R1_Var | |
%ln2Nh = load i64* %R2_Var | |
%ln2Ni = load i64* %R3_Var | |
%ln2Nj = load i64* %R4_Var | |
%ln2Nk = load i64* %R5_Var | |
%ln2Nl = load i64* %R6_Var | |
%ln2Nm = load i64* %SpLim_Var | |
%ln2Nn = load float* %F1_Var | |
%ln2No = load float* %F2_Var | |
%ln2Np = load float* %F3_Var | |
%ln2Nq = load float* %F4_Var | |
%ln2Nr = load double* %D1_Var | |
%ln2Ns = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2Nc( i64* %ln2Nd, i64* %ln2Ne, i64* %ln2Nf, i64 %ln2Ng, i64 %ln2Nh, i64 %ln2Ni, i64 %ln2Nj, i64 %ln2Nk, i64 %ln2Nl, i64 %ln2Nm, float %ln2Nn, float %ln2No, float %ln2Np, float %ln2Nq, double %ln2Nr, double %ln2Ns ) nounwind | |
ret void | |
c2N7: | |
%ln2Nt = load i64** %Base_Var | |
%ln2Nu = load i64** %Sp_Var | |
%ln2Nv = load i64** %Hp_Var | |
%ln2Nw = load i64* %R1_Var | |
%ln2Nx = load i64* %R2_Var | |
%ln2Ny = load i64* %R3_Var | |
%ln2Nz = load i64* %R4_Var | |
%ln2NA = load i64* %R5_Var | |
%ln2NB = load i64* %R6_Var | |
%ln2NC = load i64* %SpLim_Var | |
%ln2ND = load float* %F1_Var | |
%ln2NE = load float* %F2_Var | |
%ln2NF = load float* %F3_Var | |
%ln2NG = load float* %F4_Var | |
%ln2NH = load double* %D1_Var | |
%ln2NI = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s27j_info( i64* %ln2Nt, i64* %ln2Nu, i64* %ln2Nv, i64 %ln2Nw, i64 %ln2Nx, i64 %ln2Ny, i64 %ln2Nz, i64 %ln2NA, i64 %ln2NB, i64 %ln2NC, float %ln2ND, float %ln2NE, float %ln2NF, float %ln2NG, double %ln2NH, double %ln2NI ) nounwind | |
ret void | |
} | |
%s29o_ret_struct = type <{i64, i64}> | |
@s29o_info_itable = internal constant %s29o_ret_struct<{i64 2, i64 32}>, section "X98A__STRIP,__me27", align 8 | |
define internal cc 10 void @s29o_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me28" | |
{ | |
c2Qk: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2NM = alloca i64, i32 1 | |
%lc2P2 = alloca i64, i32 1 | |
%ln2Ql = load i64* %R1_Var | |
%ln2Qm = and i64 %ln2Ql, 7 | |
store i64 %ln2Qm, i64* %lc2NM | |
%ln2Qn = load i64* %lc2NM | |
%ln2Qo = icmp uge i64 %ln2Qn, 2 | |
br i1 %ln2Qo, label %c2Qp, label %n2Qq | |
n2Qq: | |
%ln2Qr = load i64** %Hp_Var | |
%ln2Qs = getelementptr inbounds i64* %ln2Qr, i32 4 | |
%ln2Qt = ptrtoint i64* %ln2Qs to i64 | |
%ln2Qu = inttoptr i64 %ln2Qt to i64* | |
store i64* %ln2Qu, i64** %Hp_Var | |
%ln2Qv = load i64** %Hp_Var | |
%ln2Qw = ptrtoint i64* %ln2Qv to i64 | |
%ln2Qx = load i64** %Base_Var | |
%ln2Qy = getelementptr inbounds i64* %ln2Qx, i32 18 | |
%ln2Qz = bitcast i64* %ln2Qy to i64* | |
%ln2QA = load i64* %ln2Qz | |
%ln2QB = icmp ugt i64 %ln2Qw, %ln2QA | |
br i1 %ln2QB, label %c2QF, label %n2QG | |
n2QG: | |
%ln2QH = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln2QI = load i64** %Hp_Var | |
%ln2QJ = getelementptr inbounds i64* %ln2QI, i32 -3 | |
store i64 %ln2QH, i64* %ln2QJ | |
%ln2QK = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln2QL = add i64 %ln2QK, 1 | |
%ln2QM = load i64** %Hp_Var | |
%ln2QN = getelementptr inbounds i64* %ln2QM, i32 -2 | |
store i64 %ln2QL, i64* %ln2QN | |
%ln2QO = load i64** %Sp_Var | |
%ln2QP = getelementptr inbounds i64* %ln2QO, i32 2 | |
%ln2QQ = bitcast i64* %ln2QP to i64* | |
%ln2QR = load i64* %ln2QQ | |
%ln2QS = load i64** %Hp_Var | |
%ln2QT = getelementptr inbounds i64* %ln2QS, i32 -1 | |
store i64 %ln2QR, i64* %ln2QT | |
%ln2QU = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln2QV = add i64 %ln2QU, 1 | |
%ln2QW = load i64** %Hp_Var | |
%ln2QX = getelementptr inbounds i64* %ln2QW, i32 0 | |
store i64 %ln2QV, i64* %ln2QX | |
%ln2QY = load i64** %Hp_Var | |
%ln2QZ = ptrtoint i64* %ln2QY to i64 | |
%ln2R0 = add i64 %ln2QZ, -22 | |
store i64 %ln2R0, i64* %R2_Var | |
%ln2R1 = load i64** %Sp_Var | |
%ln2R2 = getelementptr inbounds i64* %ln2R1, i32 1 | |
%ln2R3 = bitcast i64* %ln2R2 to i64* | |
%ln2R4 = load i64* %ln2R3 | |
store i64 %ln2R4, i64* %R3_Var | |
%ln2R5 = load i64** %Sp_Var | |
%ln2R6 = getelementptr inbounds i64* %ln2R5, i32 3 | |
%ln2R7 = ptrtoint i64* %ln2R6 to i64 | |
%ln2R8 = inttoptr i64 %ln2R7 to i64* | |
store i64* %ln2R8, i64** %Sp_Var | |
%ln2R9 = load i64** %Base_Var | |
%ln2Ra = load i64** %Sp_Var | |
%ln2Rb = load i64** %Hp_Var | |
%ln2Rc = load i64* %R1_Var | |
%ln2Rd = load i64* %R2_Var | |
%ln2Re = load i64* %R3_Var | |
%ln2Rf = load i64* %R4_Var | |
%ln2Rg = load i64* %R5_Var | |
%ln2Rh = load i64* %R6_Var | |
%ln2Ri = load i64* %SpLim_Var | |
%ln2Rj = load float* %F1_Var | |
%ln2Rk = load float* %F2_Var | |
%ln2Rl = load float* %F3_Var | |
%ln2Rm = load float* %F4_Var | |
%ln2Rn = load double* %D1_Var | |
%ln2Ro = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_listSortzulgo_info( i64* %ln2R9, i64* %ln2Ra, i64* %ln2Rb, i64 %ln2Rc, i64 %ln2Rd, i64 %ln2Re, i64 %ln2Rf, i64 %ln2Rg, i64 %ln2Rh, i64 %ln2Ri, float %ln2Rj, float %ln2Rk, float %ln2Rl, float %ln2Rm, double %ln2Rn, double %ln2Ro ) nounwind | |
ret void | |
c2Qp: | |
%ln2Rp = load i64* %R1_Var | |
%ln2Rq = add i64 %ln2Rp, 22 | |
%ln2Rr = inttoptr i64 %ln2Rq to i64* | |
%ln2Rs = load i64* %ln2Rr | |
%ln2Rt = load i64** %Sp_Var | |
%ln2Ru = getelementptr inbounds i64* %ln2Rt, i32 -1 | |
store i64 %ln2Rs, i64* %ln2Ru | |
%ln2Rv = load i64* %R1_Var | |
%ln2Rw = add i64 %ln2Rv, 6 | |
%ln2Rx = inttoptr i64 %ln2Rw to i64* | |
%ln2Ry = load i64* %ln2Rx | |
%ln2Rz = load i64** %Sp_Var | |
%ln2RA = getelementptr inbounds i64* %ln2Rz, i32 0 | |
store i64 %ln2Ry, i64* %ln2RA | |
%ln2RB = load i64** %Sp_Var | |
%ln2RC = getelementptr inbounds i64* %ln2RB, i32 2 | |
%ln2RD = bitcast i64* %ln2RC to i64* | |
%ln2RE = load i64* %ln2RD | |
store i64 %ln2RE, i64* %lc2P2 | |
%ln2RF = load i64* %R1_Var | |
%ln2RG = add i64 %ln2RF, 14 | |
%ln2RH = inttoptr i64 %ln2RG to i64* | |
%ln2RI = load i64* %ln2RH | |
%ln2RJ = load i64** %Sp_Var | |
%ln2RK = getelementptr inbounds i64* %ln2RJ, i32 2 | |
store i64 %ln2RI, i64* %ln2RK | |
%ln2RL = load i64* %lc2P2 | |
store i64 %ln2RL, i64* %R1_Var | |
%ln2RM = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29r_info to i64 | |
%ln2RN = load i64** %Sp_Var | |
%ln2RO = getelementptr inbounds i64* %ln2RN, i32 -2 | |
store i64 %ln2RM, i64* %ln2RO | |
%ln2RP = load i64** %Sp_Var | |
%ln2RQ = getelementptr inbounds i64* %ln2RP, i32 -2 | |
%ln2RR = ptrtoint i64* %ln2RQ to i64 | |
%ln2RS = inttoptr i64 %ln2RR to i64* | |
store i64* %ln2RS, i64** %Sp_Var | |
%ln2RT = load i64* %R1_Var | |
%ln2RU = and i64 %ln2RT, 7 | |
%ln2RV = icmp ne i64 %ln2RU, 0 | |
br i1 %ln2RV, label %c2RX, label %n2RY | |
n2RY: | |
%ln2RZ = load i64* %R1_Var | |
%ln2S0 = inttoptr i64 %ln2RZ to i64* | |
%ln2S1 = load i64* %ln2S0 | |
%ln2S2 = inttoptr i64 %ln2S1 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2S3 = load i64** %Base_Var | |
%ln2S4 = load i64** %Sp_Var | |
%ln2S5 = load i64** %Hp_Var | |
%ln2S6 = load i64* %R1_Var | |
%ln2S7 = load i64* %R2_Var | |
%ln2S8 = load i64* %R3_Var | |
%ln2S9 = load i64* %R4_Var | |
%ln2Sa = load i64* %R5_Var | |
%ln2Sb = load i64* %R6_Var | |
%ln2Sc = load i64* %SpLim_Var | |
%ln2Sd = load float* %F1_Var | |
%ln2Se = load float* %F2_Var | |
%ln2Sf = load float* %F3_Var | |
%ln2Sg = load float* %F4_Var | |
%ln2Sh = load double* %D1_Var | |
%ln2Si = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2S2( i64* %ln2S3, i64* %ln2S4, i64* %ln2S5, i64 %ln2S6, i64 %ln2S7, i64 %ln2S8, i64 %ln2S9, i64 %ln2Sa, i64 %ln2Sb, i64 %ln2Sc, float %ln2Sd, float %ln2Se, float %ln2Sf, float %ln2Sg, double %ln2Sh, double %ln2Si ) nounwind | |
ret void | |
c2RX: | |
%ln2Sj = load i64** %Base_Var | |
%ln2Sk = load i64** %Sp_Var | |
%ln2Sl = load i64** %Hp_Var | |
%ln2Sm = load i64* %R1_Var | |
%ln2Sn = load i64* %R2_Var | |
%ln2So = load i64* %R3_Var | |
%ln2Sp = load i64* %R4_Var | |
%ln2Sq = load i64* %R5_Var | |
%ln2Sr = load i64* %R6_Var | |
%ln2Ss = load i64* %SpLim_Var | |
%ln2St = load float* %F1_Var | |
%ln2Su = load float* %F2_Var | |
%ln2Sv = load float* %F3_Var | |
%ln2Sw = load float* %F4_Var | |
%ln2Sx = load double* %D1_Var | |
%ln2Sy = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29r_info( i64* %ln2Sj, i64* %ln2Sk, i64* %ln2Sl, i64 %ln2Sm, i64 %ln2Sn, i64 %ln2So, i64 %ln2Sp, i64 %ln2Sq, i64 %ln2Sr, i64 %ln2Ss, float %ln2St, float %ln2Su, float %ln2Sv, float %ln2Sw, double %ln2Sx, double %ln2Sy ) nounwind | |
ret void | |
c2Sz: | |
%ln2SA = load i64** %Base_Var | |
%ln2SB = getelementptr inbounds i64* %ln2SA, i32 -2 | |
%ln2SC = bitcast i64* %ln2SB to i64* | |
%ln2SD = load i64* %ln2SC | |
%ln2SE = inttoptr i64 %ln2SD to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2SF = load i64** %Base_Var | |
%ln2SG = load i64** %Sp_Var | |
%ln2SH = load i64** %Hp_Var | |
%ln2SI = load i64* %R1_Var | |
%ln2SJ = load i64* %R2_Var | |
%ln2SK = load i64* %R3_Var | |
%ln2SL = load i64* %R4_Var | |
%ln2SM = load i64* %R5_Var | |
%ln2SN = load i64* %R6_Var | |
%ln2SO = load i64* %SpLim_Var | |
%ln2SP = load float* %F1_Var | |
%ln2SQ = load float* %F2_Var | |
%ln2SR = load float* %F3_Var | |
%ln2SS = load float* %F4_Var | |
%ln2ST = load double* %D1_Var | |
%ln2SU = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2SE( i64* %ln2SF, i64* %ln2SG, i64* %ln2SH, i64 %ln2SI, i64 %ln2SJ, i64 %ln2SK, i64 %ln2SL, i64 %ln2SM, i64 %ln2SN, i64 %ln2SO, float %ln2SP, float %ln2SQ, float %ln2SR, float %ln2SS, double %ln2ST, double %ln2SU ) nounwind | |
ret void | |
c2QF: | |
%ln2SV = load i64** %Base_Var | |
%ln2SW = getelementptr inbounds i64* %ln2SV, i32 24 | |
store i64 32, i64* %ln2SW | |
br label %c2Sz | |
} | |
%s29m_ret_struct = type <{i64, i64}> | |
@s29m_info_itable = internal constant %s29m_ret_struct<{i64 1, i64 32}>, section "X98A__STRIP,__me29", align 8 | |
define internal cc 10 void @s29m_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me30" | |
{ | |
c2UF: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2T0 = alloca i64, i32 1 | |
%lc2TK = alloca i64, i32 1 | |
%ln2UG = load i64* %R1_Var | |
%ln2UH = and i64 %ln2UG, 7 | |
store i64 %ln2UH, i64* %lc2T0 | |
%ln2UI = load i64* %lc2T0 | |
%ln2UJ = icmp uge i64 %ln2UI, 2 | |
br i1 %ln2UJ, label %c2UK, label %n2UL | |
n2UL: | |
%ln2UM = load i64** %Sp_Var | |
%ln2UN = getelementptr inbounds i64* %ln2UM, i32 1 | |
%ln2UO = bitcast i64* %ln2UN to i64* | |
%ln2UP = load i64* %ln2UO | |
store i64 %ln2UP, i64* %R1_Var | |
%ln2UQ = load i64** %Sp_Var | |
%ln2UR = getelementptr inbounds i64* %ln2UQ, i32 2 | |
%ln2US = ptrtoint i64* %ln2UR to i64 | |
%ln2UT = inttoptr i64 %ln2US to i64* | |
store i64* %ln2UT, i64** %Sp_Var | |
%ln2UU = load i64* %R1_Var | |
%ln2UV = and i64 %ln2UU, -8 | |
store i64 %ln2UV, i64* %R1_Var | |
%ln2UW = load i64* %R1_Var | |
%ln2UX = inttoptr i64 %ln2UW to i64* | |
%ln2UY = load i64* %ln2UX | |
%ln2UZ = inttoptr i64 %ln2UY to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2V0 = load i64** %Base_Var | |
%ln2V1 = load i64** %Sp_Var | |
%ln2V2 = load i64** %Hp_Var | |
%ln2V3 = load i64* %R1_Var | |
%ln2V4 = load i64* %R2_Var | |
%ln2V5 = load i64* %R3_Var | |
%ln2V6 = load i64* %R4_Var | |
%ln2V7 = load i64* %R5_Var | |
%ln2V8 = load i64* %R6_Var | |
%ln2V9 = load i64* %SpLim_Var | |
%ln2Va = load float* %F1_Var | |
%ln2Vb = load float* %F2_Var | |
%ln2Vc = load float* %F3_Var | |
%ln2Vd = load float* %F4_Var | |
%ln2Ve = load double* %D1_Var | |
%ln2Vf = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2UZ( i64* %ln2V0, i64* %ln2V1, i64* %ln2V2, i64 %ln2V3, i64 %ln2V4, i64 %ln2V5, i64 %ln2V6, i64 %ln2V7, i64 %ln2V8, i64 %ln2V9, float %ln2Va, float %ln2Vb, float %ln2Vc, float %ln2Vd, double %ln2Ve, double %ln2Vf ) nounwind | |
ret void | |
c2UK: | |
%ln2Vg = load i64* %R1_Var | |
%ln2Vh = add i64 %ln2Vg, 14 | |
%ln2Vi = inttoptr i64 %ln2Vh to i64* | |
%ln2Vj = load i64* %ln2Vi | |
%ln2Vk = load i64** %Sp_Var | |
%ln2Vl = getelementptr inbounds i64* %ln2Vk, i32 0 | |
store i64 %ln2Vj, i64* %ln2Vl | |
%ln2Vm = load i64** %Sp_Var | |
%ln2Vn = getelementptr inbounds i64* %ln2Vm, i32 1 | |
%ln2Vo = bitcast i64* %ln2Vn to i64* | |
%ln2Vp = load i64* %ln2Vo | |
store i64 %ln2Vp, i64* %lc2TK | |
%ln2Vq = load i64* %R1_Var | |
%ln2Vr = add i64 %ln2Vq, 6 | |
%ln2Vs = inttoptr i64 %ln2Vr to i64* | |
%ln2Vt = load i64* %ln2Vs | |
%ln2Vu = load i64** %Sp_Var | |
%ln2Vv = getelementptr inbounds i64* %ln2Vu, i32 1 | |
store i64 %ln2Vt, i64* %ln2Vv | |
%ln2Vw = load i64* %lc2TK | |
store i64 %ln2Vw, i64* %R1_Var | |
%ln2Vx = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29o_info to i64 | |
%ln2Vy = load i64** %Sp_Var | |
%ln2Vz = getelementptr inbounds i64* %ln2Vy, i32 -1 | |
store i64 %ln2Vx, i64* %ln2Vz | |
%ln2VA = load i64** %Sp_Var | |
%ln2VB = getelementptr inbounds i64* %ln2VA, i32 -1 | |
%ln2VC = ptrtoint i64* %ln2VB to i64 | |
%ln2VD = inttoptr i64 %ln2VC to i64* | |
store i64* %ln2VD, i64** %Sp_Var | |
%ln2VE = load i64* %R1_Var | |
%ln2VF = and i64 %ln2VE, 7 | |
%ln2VG = icmp ne i64 %ln2VF, 0 | |
br i1 %ln2VG, label %c2VI, label %n2VJ | |
n2VJ: | |
%ln2VK = load i64* %R1_Var | |
%ln2VL = inttoptr i64 %ln2VK to i64* | |
%ln2VM = load i64* %ln2VL | |
%ln2VN = inttoptr i64 %ln2VM to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2VO = load i64** %Base_Var | |
%ln2VP = load i64** %Sp_Var | |
%ln2VQ = load i64** %Hp_Var | |
%ln2VR = load i64* %R1_Var | |
%ln2VS = load i64* %R2_Var | |
%ln2VT = load i64* %R3_Var | |
%ln2VU = load i64* %R4_Var | |
%ln2VV = load i64* %R5_Var | |
%ln2VW = load i64* %R6_Var | |
%ln2VX = load i64* %SpLim_Var | |
%ln2VY = load float* %F1_Var | |
%ln2VZ = load float* %F2_Var | |
%ln2W0 = load float* %F3_Var | |
%ln2W1 = load float* %F4_Var | |
%ln2W2 = load double* %D1_Var | |
%ln2W3 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2VN( i64* %ln2VO, i64* %ln2VP, i64* %ln2VQ, i64 %ln2VR, i64 %ln2VS, i64 %ln2VT, i64 %ln2VU, i64 %ln2VV, i64 %ln2VW, i64 %ln2VX, float %ln2VY, float %ln2VZ, float %ln2W0, float %ln2W1, double %ln2W2, double %ln2W3 ) nounwind | |
ret void | |
c2VI: | |
%ln2W4 = load i64** %Base_Var | |
%ln2W5 = load i64** %Sp_Var | |
%ln2W6 = load i64** %Hp_Var | |
%ln2W7 = load i64* %R1_Var | |
%ln2W8 = load i64* %R2_Var | |
%ln2W9 = load i64* %R3_Var | |
%ln2Wa = load i64* %R4_Var | |
%ln2Wb = load i64* %R5_Var | |
%ln2Wc = load i64* %R6_Var | |
%ln2Wd = load i64* %SpLim_Var | |
%ln2We = load float* %F1_Var | |
%ln2Wf = load float* %F2_Var | |
%ln2Wg = load float* %F3_Var | |
%ln2Wh = load float* %F4_Var | |
%ln2Wi = load double* %D1_Var | |
%ln2Wj = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29o_info( i64* %ln2W4, i64* %ln2W5, i64* %ln2W6, i64 %ln2W7, i64 %ln2W8, i64 %ln2W9, i64 %ln2Wa, i64 %ln2Wb, i64 %ln2Wc, i64 %ln2Wd, float %ln2We, float %ln2Wf, float %ln2Wg, float %ln2Wh, double %ln2Wi, double %ln2Wj ) nounwind | |
ret void | |
} | |
%Main_listSortzulgo_info_struct = type <{i64, i64, i64}> | |
@Main_listSortzulgo_info_itable = constant %Main_listSortzulgo_info_struct<{i64 8589934604, i64 0, i64 15}>, section "X98A__STRIP,__me31", align 8 | |
define cc 10 void @Main_listSortzulgo_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me32" | |
{ | |
c2XC: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2XD = load i64** %Sp_Var | |
%ln2XE = getelementptr inbounds i64* %ln2XD, i32 -5 | |
%ln2XF = ptrtoint i64* %ln2XE to i64 | |
%ln2XG = load i64* %SpLim_Var | |
%ln2XH = icmp ult i64 %ln2XF, %ln2XG | |
br i1 %ln2XH, label %c2XJ, label %n2XK | |
n2XK: | |
%ln2XL = load i64* %R2_Var | |
%ln2XM = load i64** %Sp_Var | |
%ln2XN = getelementptr inbounds i64* %ln2XM, i32 -1 | |
store i64 %ln2XL, i64* %ln2XN | |
%ln2XO = load i64* %R3_Var | |
store i64 %ln2XO, i64* %R1_Var | |
%ln2XP = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29m_info to i64 | |
%ln2XQ = load i64** %Sp_Var | |
%ln2XR = getelementptr inbounds i64* %ln2XQ, i32 -2 | |
store i64 %ln2XP, i64* %ln2XR | |
%ln2XS = load i64** %Sp_Var | |
%ln2XT = getelementptr inbounds i64* %ln2XS, i32 -2 | |
%ln2XU = ptrtoint i64* %ln2XT to i64 | |
%ln2XV = inttoptr i64 %ln2XU to i64* | |
store i64* %ln2XV, i64** %Sp_Var | |
%ln2XW = load i64* %R1_Var | |
%ln2XX = and i64 %ln2XW, 7 | |
%ln2XY = icmp ne i64 %ln2XX, 0 | |
br i1 %ln2XY, label %c2Y1, label %n2Y2 | |
n2Y2: | |
%ln2Y3 = load i64* %R1_Var | |
%ln2Y4 = inttoptr i64 %ln2Y3 to i64* | |
%ln2Y5 = load i64* %ln2Y4 | |
%ln2Y6 = inttoptr i64 %ln2Y5 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2Y7 = load i64** %Base_Var | |
%ln2Y8 = load i64** %Sp_Var | |
%ln2Y9 = load i64** %Hp_Var | |
%ln2Ya = load i64* %R1_Var | |
%ln2Yb = load i64* %R2_Var | |
%ln2Yc = load i64* %R3_Var | |
%ln2Yd = load i64* %R4_Var | |
%ln2Ye = load i64* %R5_Var | |
%ln2Yf = load i64* %R6_Var | |
%ln2Yg = load i64* %SpLim_Var | |
%ln2Yh = load float* %F1_Var | |
%ln2Yi = load float* %F2_Var | |
%ln2Yj = load float* %F3_Var | |
%ln2Yk = load float* %F4_Var | |
%ln2Yl = load double* %D1_Var | |
%ln2Ym = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2Y6( i64* %ln2Y7, i64* %ln2Y8, i64* %ln2Y9, i64 %ln2Ya, i64 %ln2Yb, i64 %ln2Yc, i64 %ln2Yd, i64 %ln2Ye, i64 %ln2Yf, i64 %ln2Yg, float %ln2Yh, float %ln2Yi, float %ln2Yj, float %ln2Yk, double %ln2Yl, double %ln2Ym ) nounwind | |
ret void | |
c2XJ: | |
%ln2Yn = ptrtoint %Main_listSortzulgo_closure_struct* @Main_listSortzulgo_closure to i64 | |
store i64 %ln2Yn, i64* %R1_Var | |
%ln2Yo = load i64** %Base_Var | |
%ln2Yp = getelementptr inbounds i64* %ln2Yo, i32 -1 | |
%ln2Yq = bitcast i64* %ln2Yp to i64* | |
%ln2Yr = load i64* %ln2Yq | |
%ln2Ys = inttoptr i64 %ln2Yr to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln2Yt = load i64** %Base_Var | |
%ln2Yu = load i64** %Sp_Var | |
%ln2Yv = load i64** %Hp_Var | |
%ln2Yw = load i64* %R1_Var | |
%ln2Yx = load i64* %R2_Var | |
%ln2Yy = load i64* %R3_Var | |
%ln2Yz = load i64* %R4_Var | |
%ln2YA = load i64* %R5_Var | |
%ln2YB = load i64* %R6_Var | |
%ln2YC = load i64* %SpLim_Var | |
%ln2YD = load float* %F1_Var | |
%ln2YE = load float* %F2_Var | |
%ln2YF = load float* %F3_Var | |
%ln2YG = load float* %F4_Var | |
%ln2YH = load double* %D1_Var | |
%ln2YI = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln2Ys( i64* %ln2Yt, i64* %ln2Yu, i64* %ln2Yv, i64 %ln2Yw, i64 %ln2Yx, i64 %ln2Yy, i64 %ln2Yz, i64 %ln2YA, i64 %ln2YB, i64 %ln2YC, float %ln2YD, float %ln2YE, float %ln2YF, float %ln2YG, double %ln2YH, double %ln2YI ) nounwind | |
ret void | |
c2Y1: | |
%ln2YJ = load i64** %Base_Var | |
%ln2YK = load i64** %Sp_Var | |
%ln2YL = load i64** %Hp_Var | |
%ln2YM = load i64* %R1_Var | |
%ln2YN = load i64* %R2_Var | |
%ln2YO = load i64* %R3_Var | |
%ln2YP = load i64* %R4_Var | |
%ln2YQ = load i64* %R5_Var | |
%ln2YR = load i64* %R6_Var | |
%ln2YS = load i64* %SpLim_Var | |
%ln2YT = load float* %F1_Var | |
%ln2YU = load float* %F2_Var | |
%ln2YV = load float* %F3_Var | |
%ln2YW = load float* %F4_Var | |
%ln2YX = load double* %D1_Var | |
%ln2YY = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29m_info( i64* %ln2YJ, i64* %ln2YK, i64* %ln2YL, i64 %ln2YM, i64 %ln2YN, i64 %ln2YO, i64 %ln2YP, i64 %ln2YQ, i64 %ln2YR, i64 %ln2YS, float %ln2YT, float %ln2YU, float %ln2YV, float %ln2YW, double %ln2YX, double %ln2YY ) nounwind | |
ret void | |
} | |
%Main_listSortzuzdstreeFromList_info_struct = type <{i64, i64, i64}> | |
@Main_listSortzuzdstreeFromList_info_itable = constant %Main_listSortzuzdstreeFromList_info_struct<{i64 4294967301, i64 0, i64 15}>, section "X98A__STRIP,__me33", align 8 | |
define cc 10 void @Main_listSortzuzdstreeFromList_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me34" | |
{ | |
c2Zl: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln2Zm = load i64* %R2_Var | |
store i64 %ln2Zm, i64* %R3_Var | |
%ln2Zn = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln2Zo = add i64 %ln2Zn, 1 | |
store i64 %ln2Zo, i64* %R2_Var | |
%ln2Zp = load i64** %Base_Var | |
%ln2Zq = load i64** %Sp_Var | |
%ln2Zr = load i64** %Hp_Var | |
%ln2Zs = load i64* %R1_Var | |
%ln2Zt = load i64* %R2_Var | |
%ln2Zu = load i64* %R3_Var | |
%ln2Zv = load i64* %R4_Var | |
%ln2Zw = load i64* %R5_Var | |
%ln2Zx = load i64* %R6_Var | |
%ln2Zy = load i64* %SpLim_Var | |
%ln2Zz = load float* %F1_Var | |
%ln2ZA = load float* %F2_Var | |
%ln2ZB = load float* %F3_Var | |
%ln2ZC = load float* %F4_Var | |
%ln2ZD = load double* %D1_Var | |
%ln2ZE = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_listSortzulgo_info( i64* %ln2Zp, i64* %ln2Zq, i64* %ln2Zr, i64 %ln2Zs, i64 %ln2Zt, i64 %ln2Zu, i64 %ln2Zv, i64 %ln2Zw, i64 %ln2Zx, i64 %ln2Zy, float %ln2Zz, float %ln2ZA, float %ln2ZB, float %ln2ZC, double %ln2ZD, double %ln2ZE ) nounwind | |
ret void | |
} | |
%s29i_ret_struct = type <{i64, i64}> | |
@s29i_info_itable = internal constant %s29i_ret_struct<{i64 5, i64 32}>, section "X98A__STRIP,__me35", align 8 | |
define internal cc 10 void @s29i_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me36" | |
{ | |
c33n: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc2ZV = alloca i64, i32 1 | |
%ln33o = load i64* %R1_Var | |
%ln33p = and i64 %ln33o, 7 | |
store i64 %ln33p, i64* %lc2ZV | |
%ln33q = load i64* %lc2ZV | |
%ln33r = icmp uge i64 %ln33q, 2 | |
br i1 %ln33r, label %c33s, label %n33t | |
n33t: | |
%ln33u = load i64** %Hp_Var | |
%ln33v = getelementptr inbounds i64* %ln33u, i32 9 | |
%ln33w = ptrtoint i64* %ln33v to i64 | |
%ln33x = inttoptr i64 %ln33w to i64* | |
store i64* %ln33x, i64** %Hp_Var | |
%ln33y = load i64** %Hp_Var | |
%ln33z = ptrtoint i64* %ln33y to i64 | |
%ln33A = load i64** %Base_Var | |
%ln33B = getelementptr inbounds i64* %ln33A, i32 18 | |
%ln33C = bitcast i64* %ln33B to i64* | |
%ln33D = load i64* %ln33C | |
%ln33E = icmp ugt i64 %ln33z, %ln33D | |
br i1 %ln33E, label %c33J, label %n33K | |
n33K: | |
%ln33L = ptrtoint [0 x i64]* @stg_ap_3_upd_info to i64 | |
%ln33M = load i64** %Hp_Var | |
%ln33N = getelementptr inbounds i64* %ln33M, i32 -8 | |
store i64 %ln33L, i64* %ln33N | |
%ln33O = load i64** %Sp_Var | |
%ln33P = getelementptr inbounds i64* %ln33O, i32 3 | |
%ln33Q = bitcast i64* %ln33P to i64* | |
%ln33R = load i64* %ln33Q | |
%ln33S = load i64** %Hp_Var | |
%ln33T = getelementptr inbounds i64* %ln33S, i32 -6 | |
store i64 %ln33R, i64* %ln33T | |
%ln33U = load i64** %Sp_Var | |
%ln33V = getelementptr inbounds i64* %ln33U, i32 1 | |
%ln33W = bitcast i64* %ln33V to i64* | |
%ln33X = load i64* %ln33W | |
%ln33Y = load i64** %Hp_Var | |
%ln33Z = getelementptr inbounds i64* %ln33Y, i32 -5 | |
store i64 %ln33X, i64* %ln33Z | |
%ln340 = load i64** %Sp_Var | |
%ln341 = getelementptr inbounds i64* %ln340, i32 5 | |
%ln342 = bitcast i64* %ln341 to i64* | |
%ln343 = load i64* %ln342 | |
%ln344 = load i64** %Hp_Var | |
%ln345 = getelementptr inbounds i64* %ln344, i32 -4 | |
store i64 %ln343, i64* %ln345 | |
%ln346 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln347 = load i64** %Hp_Var | |
%ln348 = getelementptr inbounds i64* %ln347, i32 -3 | |
store i64 %ln346, i64* %ln348 | |
%ln349 = load i64** %Sp_Var | |
%ln34a = getelementptr inbounds i64* %ln349, i32 2 | |
%ln34b = bitcast i64* %ln34a to i64* | |
%ln34c = load i64* %ln34b | |
%ln34d = load i64** %Hp_Var | |
%ln34e = getelementptr inbounds i64* %ln34d, i32 -2 | |
store i64 %ln34c, i64* %ln34e | |
%ln34f = load i64** %Sp_Var | |
%ln34g = getelementptr inbounds i64* %ln34f, i32 4 | |
%ln34h = bitcast i64* %ln34g to i64* | |
%ln34i = load i64* %ln34h | |
%ln34j = load i64** %Hp_Var | |
%ln34k = getelementptr inbounds i64* %ln34j, i32 -1 | |
store i64 %ln34i, i64* %ln34k | |
%ln34l = load i64** %Hp_Var | |
%ln34m = getelementptr inbounds i64* %ln34l, i32 -8 | |
%ln34n = ptrtoint i64* %ln34m to i64 | |
%ln34o = load i64** %Hp_Var | |
%ln34p = getelementptr inbounds i64* %ln34o, i32 0 | |
store i64 %ln34n, i64* %ln34p | |
%ln34q = load i64** %Hp_Var | |
%ln34r = ptrtoint i64* %ln34q to i64 | |
%ln34s = add i64 %ln34r, -22 | |
store i64 %ln34s, i64* %R1_Var | |
%ln34t = load i64** %Sp_Var | |
%ln34u = getelementptr inbounds i64* %ln34t, i32 6 | |
%ln34v = ptrtoint i64* %ln34u to i64 | |
%ln34w = inttoptr i64 %ln34v to i64* | |
store i64* %ln34w, i64** %Sp_Var | |
%ln34x = load i64** %Sp_Var | |
%ln34y = getelementptr inbounds i64* %ln34x, i32 0 | |
%ln34z = bitcast i64* %ln34y to i64* | |
%ln34A = load i64* %ln34z | |
%ln34B = inttoptr i64 %ln34A to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln34C = load i64** %Base_Var | |
%ln34D = load i64** %Sp_Var | |
%ln34E = load i64** %Hp_Var | |
%ln34F = load i64* %R1_Var | |
%ln34G = load i64* %R2_Var | |
%ln34H = load i64* %R3_Var | |
%ln34I = load i64* %R4_Var | |
%ln34J = load i64* %R5_Var | |
%ln34K = load i64* %R6_Var | |
%ln34L = load i64* %SpLim_Var | |
%ln34M = load float* %F1_Var | |
%ln34N = load float* %F2_Var | |
%ln34O = load float* %F3_Var | |
%ln34P = load float* %F4_Var | |
%ln34Q = load double* %D1_Var | |
%ln34R = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln34B( i64* %ln34C, i64* %ln34D, i64* %ln34E, i64 %ln34F, i64 %ln34G, i64 %ln34H, i64 %ln34I, i64 %ln34J, i64 %ln34K, i64 %ln34L, float %ln34M, float %ln34N, float %ln34O, float %ln34P, double %ln34Q, double %ln34R ) nounwind | |
ret void | |
c33s: | |
%ln34S = load i64** %Hp_Var | |
%ln34T = getelementptr inbounds i64* %ln34S, i32 9 | |
%ln34U = ptrtoint i64* %ln34T to i64 | |
%ln34V = inttoptr i64 %ln34U to i64* | |
store i64* %ln34V, i64** %Hp_Var | |
%ln34W = load i64** %Hp_Var | |
%ln34X = ptrtoint i64* %ln34W to i64 | |
%ln34Y = load i64** %Base_Var | |
%ln34Z = getelementptr inbounds i64* %ln34Y, i32 18 | |
%ln350 = bitcast i64* %ln34Z to i64* | |
%ln351 = load i64* %ln350 | |
%ln352 = icmp ugt i64 %ln34X, %ln351 | |
br i1 %ln352, label %c357, label %n358 | |
n358: | |
%ln359 = ptrtoint [0 x i64]* @stg_ap_3_upd_info to i64 | |
%ln35a = load i64** %Hp_Var | |
%ln35b = getelementptr inbounds i64* %ln35a, i32 -8 | |
store i64 %ln359, i64* %ln35b | |
%ln35c = load i64** %Sp_Var | |
%ln35d = getelementptr inbounds i64* %ln35c, i32 3 | |
%ln35e = bitcast i64* %ln35d to i64* | |
%ln35f = load i64* %ln35e | |
%ln35g = load i64** %Hp_Var | |
%ln35h = getelementptr inbounds i64* %ln35g, i32 -6 | |
store i64 %ln35f, i64* %ln35h | |
%ln35i = load i64** %Sp_Var | |
%ln35j = getelementptr inbounds i64* %ln35i, i32 2 | |
%ln35k = bitcast i64* %ln35j to i64* | |
%ln35l = load i64* %ln35k | |
%ln35m = load i64** %Hp_Var | |
%ln35n = getelementptr inbounds i64* %ln35m, i32 -5 | |
store i64 %ln35l, i64* %ln35n | |
%ln35o = load i64** %Sp_Var | |
%ln35p = getelementptr inbounds i64* %ln35o, i32 5 | |
%ln35q = bitcast i64* %ln35p to i64* | |
%ln35r = load i64* %ln35q | |
%ln35s = load i64** %Hp_Var | |
%ln35t = getelementptr inbounds i64* %ln35s, i32 -4 | |
store i64 %ln35r, i64* %ln35t | |
%ln35u = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln35v = load i64** %Hp_Var | |
%ln35w = getelementptr inbounds i64* %ln35v, i32 -3 | |
store i64 %ln35u, i64* %ln35w | |
%ln35x = load i64** %Hp_Var | |
%ln35y = getelementptr inbounds i64* %ln35x, i32 -8 | |
%ln35z = ptrtoint i64* %ln35y to i64 | |
%ln35A = load i64** %Hp_Var | |
%ln35B = getelementptr inbounds i64* %ln35A, i32 -2 | |
store i64 %ln35z, i64* %ln35B | |
%ln35C = load i64** %Sp_Var | |
%ln35D = getelementptr inbounds i64* %ln35C, i32 4 | |
%ln35E = bitcast i64* %ln35D to i64* | |
%ln35F = load i64* %ln35E | |
%ln35G = load i64** %Hp_Var | |
%ln35H = getelementptr inbounds i64* %ln35G, i32 -1 | |
store i64 %ln35F, i64* %ln35H | |
%ln35I = load i64** %Sp_Var | |
%ln35J = getelementptr inbounds i64* %ln35I, i32 1 | |
%ln35K = bitcast i64* %ln35J to i64* | |
%ln35L = load i64* %ln35K | |
%ln35M = load i64** %Hp_Var | |
%ln35N = getelementptr inbounds i64* %ln35M, i32 0 | |
store i64 %ln35L, i64* %ln35N | |
%ln35O = load i64** %Hp_Var | |
%ln35P = ptrtoint i64* %ln35O to i64 | |
%ln35Q = add i64 %ln35P, -22 | |
store i64 %ln35Q, i64* %R1_Var | |
%ln35R = load i64** %Sp_Var | |
%ln35S = getelementptr inbounds i64* %ln35R, i32 6 | |
%ln35T = ptrtoint i64* %ln35S to i64 | |
%ln35U = inttoptr i64 %ln35T to i64* | |
store i64* %ln35U, i64** %Sp_Var | |
%ln35V = load i64** %Sp_Var | |
%ln35W = getelementptr inbounds i64* %ln35V, i32 0 | |
%ln35X = bitcast i64* %ln35W to i64* | |
%ln35Y = load i64* %ln35X | |
%ln35Z = inttoptr i64 %ln35Y to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln360 = load i64** %Base_Var | |
%ln361 = load i64** %Sp_Var | |
%ln362 = load i64** %Hp_Var | |
%ln363 = load i64* %R1_Var | |
%ln364 = load i64* %R2_Var | |
%ln365 = load i64* %R3_Var | |
%ln366 = load i64* %R4_Var | |
%ln367 = load i64* %R5_Var | |
%ln368 = load i64* %R6_Var | |
%ln369 = load i64* %SpLim_Var | |
%ln36a = load float* %F1_Var | |
%ln36b = load float* %F2_Var | |
%ln36c = load float* %F3_Var | |
%ln36d = load float* %F4_Var | |
%ln36e = load double* %D1_Var | |
%ln36f = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln35Z( i64* %ln360, i64* %ln361, i64* %ln362, i64 %ln363, i64 %ln364, i64 %ln365, i64 %ln366, i64 %ln367, i64 %ln368, i64 %ln369, float %ln36a, float %ln36b, float %ln36c, float %ln36d, double %ln36e, double %ln36f ) nounwind | |
ret void | |
c36g: | |
%ln36h = load i64** %Base_Var | |
%ln36i = getelementptr inbounds i64* %ln36h, i32 -2 | |
%ln36j = bitcast i64* %ln36i to i64* | |
%ln36k = load i64* %ln36j | |
%ln36l = inttoptr i64 %ln36k to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln36m = load i64** %Base_Var | |
%ln36n = load i64** %Sp_Var | |
%ln36o = load i64** %Hp_Var | |
%ln36p = load i64* %R1_Var | |
%ln36q = load i64* %R2_Var | |
%ln36r = load i64* %R3_Var | |
%ln36s = load i64* %R4_Var | |
%ln36t = load i64* %R5_Var | |
%ln36u = load i64* %R6_Var | |
%ln36v = load i64* %SpLim_Var | |
%ln36w = load float* %F1_Var | |
%ln36x = load float* %F2_Var | |
%ln36y = load float* %F3_Var | |
%ln36z = load float* %F4_Var | |
%ln36A = load double* %D1_Var | |
%ln36B = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln36l( i64* %ln36m, i64* %ln36n, i64* %ln36o, i64 %ln36p, i64 %ln36q, i64 %ln36r, i64 %ln36s, i64 %ln36t, i64 %ln36u, i64 %ln36v, float %ln36w, float %ln36x, float %ln36y, float %ln36z, double %ln36A, double %ln36B ) nounwind | |
ret void | |
c357: | |
%ln36C = load i64** %Base_Var | |
%ln36D = getelementptr inbounds i64* %ln36C, i32 24 | |
store i64 72, i64* %ln36D | |
br label %c36g | |
c36E: | |
%ln36F = load i64** %Base_Var | |
%ln36G = getelementptr inbounds i64* %ln36F, i32 -2 | |
%ln36H = bitcast i64* %ln36G to i64* | |
%ln36I = load i64* %ln36H | |
%ln36J = inttoptr i64 %ln36I to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln36K = load i64** %Base_Var | |
%ln36L = load i64** %Sp_Var | |
%ln36M = load i64** %Hp_Var | |
%ln36N = load i64* %R1_Var | |
%ln36O = load i64* %R2_Var | |
%ln36P = load i64* %R3_Var | |
%ln36Q = load i64* %R4_Var | |
%ln36R = load i64* %R5_Var | |
%ln36S = load i64* %R6_Var | |
%ln36T = load i64* %SpLim_Var | |
%ln36U = load float* %F1_Var | |
%ln36V = load float* %F2_Var | |
%ln36W = load float* %F3_Var | |
%ln36X = load float* %F4_Var | |
%ln36Y = load double* %D1_Var | |
%ln36Z = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln36J( i64* %ln36K, i64* %ln36L, i64* %ln36M, i64 %ln36N, i64 %ln36O, i64 %ln36P, i64 %ln36Q, i64 %ln36R, i64 %ln36S, i64 %ln36T, float %ln36U, float %ln36V, float %ln36W, float %ln36X, double %ln36Y, double %ln36Z ) nounwind | |
ret void | |
c33J: | |
%ln370 = load i64** %Base_Var | |
%ln371 = getelementptr inbounds i64* %ln370, i32 24 | |
store i64 72, i64* %ln371 | |
br label %c36E | |
} | |
@stg_ap_3_upd_info = external global [0 x i64] | |
%s29h_ret_struct = type <{i64, i64}> | |
@s29h_info_itable = internal constant %s29h_ret_struct<{i64 3, i64 32}>, section "X98A__STRIP,__me37", align 8 | |
define internal cc 10 void @s29h_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me38" | |
{ | |
c39r: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc375 = alloca i64, i32 1 | |
%ln39s = load i64* %R1_Var | |
%ln39t = and i64 %ln39s, 7 | |
store i64 %ln39t, i64* %lc375 | |
%ln39u = load i64* %lc375 | |
%ln39v = icmp uge i64 %ln39u, 2 | |
br i1 %ln39v, label %c39w, label %n39x | |
n39x: | |
%ln39y = load i64** %Hp_Var | |
%ln39z = getelementptr inbounds i64* %ln39y, i32 4 | |
%ln39A = ptrtoint i64* %ln39z to i64 | |
%ln39B = inttoptr i64 %ln39A to i64* | |
store i64* %ln39B, i64** %Hp_Var | |
%ln39C = load i64** %Hp_Var | |
%ln39D = ptrtoint i64* %ln39C to i64 | |
%ln39E = load i64** %Base_Var | |
%ln39F = getelementptr inbounds i64* %ln39E, i32 18 | |
%ln39G = bitcast i64* %ln39F to i64* | |
%ln39H = load i64* %ln39G | |
%ln39I = icmp ugt i64 %ln39D, %ln39H | |
br i1 %ln39I, label %c39M, label %n39N | |
n39N: | |
%ln39O = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln39P = load i64** %Hp_Var | |
%ln39Q = getelementptr inbounds i64* %ln39P, i32 -3 | |
store i64 %ln39O, i64* %ln39Q | |
%ln39R = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln39S = add i64 %ln39R, 1 | |
%ln39T = load i64** %Hp_Var | |
%ln39U = getelementptr inbounds i64* %ln39T, i32 -2 | |
store i64 %ln39S, i64* %ln39U | |
%ln39V = load i64** %Sp_Var | |
%ln39W = getelementptr inbounds i64* %ln39V, i32 3 | |
%ln39X = bitcast i64* %ln39W to i64* | |
%ln39Y = load i64* %ln39X | |
%ln39Z = load i64** %Hp_Var | |
%ln3a0 = getelementptr inbounds i64* %ln39Z, i32 -1 | |
store i64 %ln39Y, i64* %ln3a0 | |
%ln3a1 = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln3a2 = add i64 %ln3a1, 1 | |
%ln3a3 = load i64** %Hp_Var | |
%ln3a4 = getelementptr inbounds i64* %ln3a3, i32 0 | |
store i64 %ln3a2, i64* %ln3a4 | |
%ln3a5 = load i64** %Hp_Var | |
%ln3a6 = ptrtoint i64* %ln3a5 to i64 | |
%ln3a7 = add i64 %ln3a6, -22 | |
store i64 %ln3a7, i64* %R1_Var | |
%ln3a8 = load i64** %Sp_Var | |
%ln3a9 = getelementptr inbounds i64* %ln3a8, i32 4 | |
%ln3aa = ptrtoint i64* %ln3a9 to i64 | |
%ln3ab = inttoptr i64 %ln3aa to i64* | |
store i64* %ln3ab, i64** %Sp_Var | |
%ln3ac = load i64** %Sp_Var | |
%ln3ad = getelementptr inbounds i64* %ln3ac, i32 0 | |
%ln3ae = bitcast i64* %ln3ad to i64* | |
%ln3af = load i64* %ln3ae | |
%ln3ag = inttoptr i64 %ln3af to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3ah = load i64** %Base_Var | |
%ln3ai = load i64** %Sp_Var | |
%ln3aj = load i64** %Hp_Var | |
%ln3ak = load i64* %R1_Var | |
%ln3al = load i64* %R2_Var | |
%ln3am = load i64* %R3_Var | |
%ln3an = load i64* %R4_Var | |
%ln3ao = load i64* %R5_Var | |
%ln3ap = load i64* %R6_Var | |
%ln3aq = load i64* %SpLim_Var | |
%ln3ar = load float* %F1_Var | |
%ln3as = load float* %F2_Var | |
%ln3at = load float* %F3_Var | |
%ln3au = load float* %F4_Var | |
%ln3av = load double* %D1_Var | |
%ln3aw = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3ag( i64* %ln3ah, i64* %ln3ai, i64* %ln3aj, i64 %ln3ak, i64 %ln3al, i64 %ln3am, i64 %ln3an, i64 %ln3ao, i64 %ln3ap, i64 %ln3aq, float %ln3ar, float %ln3as, float %ln3at, float %ln3au, double %ln3av, double %ln3aw ) nounwind | |
ret void | |
c39w: | |
%ln3ax = load i64* %R1_Var | |
%ln3ay = add i64 %ln3ax, 22 | |
%ln3az = inttoptr i64 %ln3ay to i64* | |
%ln3aA = load i64* %ln3az | |
%ln3aB = load i64** %Sp_Var | |
%ln3aC = getelementptr inbounds i64* %ln3aB, i32 -1 | |
store i64 %ln3aA, i64* %ln3aC | |
%ln3aD = load i64* %R1_Var | |
%ln3aE = add i64 %ln3aD, 6 | |
%ln3aF = inttoptr i64 %ln3aE to i64* | |
%ln3aG = load i64* %ln3aF | |
%ln3aH = load i64** %Sp_Var | |
%ln3aI = getelementptr inbounds i64* %ln3aH, i32 0 | |
store i64 %ln3aG, i64* %ln3aI | |
%ln3aJ = load i64* %R1_Var | |
%ln3aK = add i64 %ln3aJ, 14 | |
%ln3aL = inttoptr i64 %ln3aK to i64* | |
%ln3aM = load i64* %ln3aL | |
%ln3aN = load i64** %Sp_Var | |
%ln3aO = getelementptr inbounds i64* %ln3aN, i32 -3 | |
store i64 %ln3aM, i64* %ln3aO | |
%ln3aP = load i64** %Sp_Var | |
%ln3aQ = getelementptr inbounds i64* %ln3aP, i32 3 | |
%ln3aR = bitcast i64* %ln3aQ to i64* | |
%ln3aS = load i64* %ln3aR | |
%ln3aT = load i64** %Sp_Var | |
%ln3aU = getelementptr inbounds i64* %ln3aT, i32 -4 | |
store i64 %ln3aS, i64* %ln3aU | |
%ln3aV = ptrtoint [0 x i64]* @stg_ap_pp_info to i64 | |
%ln3aW = load i64** %Sp_Var | |
%ln3aX = getelementptr inbounds i64* %ln3aW, i32 -5 | |
store i64 %ln3aV, i64* %ln3aX | |
%ln3aY = load i64** %Sp_Var | |
%ln3aZ = getelementptr inbounds i64* %ln3aY, i32 2 | |
%ln3b0 = bitcast i64* %ln3aZ to i64* | |
%ln3b1 = load i64* %ln3b0 | |
store i64 %ln3b1, i64* %R2_Var | |
%ln3b2 = load i64* %R1_Var | |
%ln3b3 = add i64 %ln3b2, 14 | |
%ln3b4 = inttoptr i64 %ln3b3 to i64* | |
%ln3b5 = load i64* %ln3b4 | |
%ln3b6 = load i64** %Sp_Var | |
%ln3b7 = getelementptr inbounds i64* %ln3b6, i32 2 | |
store i64 %ln3b5, i64* %ln3b7 | |
%ln3b8 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29i_info to i64 | |
%ln3b9 = load i64** %Sp_Var | |
%ln3ba = getelementptr inbounds i64* %ln3b9, i32 -2 | |
store i64 %ln3b8, i64* %ln3ba | |
%ln3bb = load i64** %Sp_Var | |
%ln3bc = getelementptr inbounds i64* %ln3bb, i32 -5 | |
%ln3bd = ptrtoint i64* %ln3bc to i64 | |
%ln3be = inttoptr i64 %ln3bd to i64* | |
store i64* %ln3be, i64** %Sp_Var | |
%ln3bf = load i64** %Base_Var | |
%ln3bg = load i64** %Sp_Var | |
%ln3bh = load i64** %Hp_Var | |
%ln3bi = load i64* %R1_Var | |
%ln3bj = load i64* %R2_Var | |
%ln3bk = load i64* %R3_Var | |
%ln3bl = load i64* %R4_Var | |
%ln3bm = load i64* %R5_Var | |
%ln3bn = load i64* %R6_Var | |
%ln3bo = load i64* %SpLim_Var | |
%ln3bp = load float* %F1_Var | |
%ln3bq = load float* %F2_Var | |
%ln3br = load float* %F3_Var | |
%ln3bs = load float* %F4_Var | |
%ln3bt = load double* %D1_Var | |
%ln3bu = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @ghczmprim_GHCziClasses_zl_info( i64* %ln3bf, i64* %ln3bg, i64* %ln3bh, i64 %ln3bi, i64 %ln3bj, i64 %ln3bk, i64 %ln3bl, i64 %ln3bm, i64 %ln3bn, i64 %ln3bo, float %ln3bp, float %ln3bq, float %ln3br, float %ln3bs, double %ln3bt, double %ln3bu ) nounwind | |
ret void | |
c3bv: | |
%ln3bw = load i64** %Base_Var | |
%ln3bx = getelementptr inbounds i64* %ln3bw, i32 -2 | |
%ln3by = bitcast i64* %ln3bx to i64* | |
%ln3bz = load i64* %ln3by | |
%ln3bA = inttoptr i64 %ln3bz to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3bB = load i64** %Base_Var | |
%ln3bC = load i64** %Sp_Var | |
%ln3bD = load i64** %Hp_Var | |
%ln3bE = load i64* %R1_Var | |
%ln3bF = load i64* %R2_Var | |
%ln3bG = load i64* %R3_Var | |
%ln3bH = load i64* %R4_Var | |
%ln3bI = load i64* %R5_Var | |
%ln3bJ = load i64* %R6_Var | |
%ln3bK = load i64* %SpLim_Var | |
%ln3bL = load float* %F1_Var | |
%ln3bM = load float* %F2_Var | |
%ln3bN = load float* %F3_Var | |
%ln3bO = load float* %F4_Var | |
%ln3bP = load double* %D1_Var | |
%ln3bQ = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3bA( i64* %ln3bB, i64* %ln3bC, i64* %ln3bD, i64 %ln3bE, i64 %ln3bF, i64 %ln3bG, i64 %ln3bH, i64 %ln3bI, i64 %ln3bJ, i64 %ln3bK, float %ln3bL, float %ln3bM, float %ln3bN, float %ln3bO, double %ln3bP, double %ln3bQ ) nounwind | |
ret void | |
c39M: | |
%ln3bR = load i64** %Base_Var | |
%ln3bS = getelementptr inbounds i64* %ln3bR, i32 24 | |
store i64 32, i64* %ln3bS | |
br label %c3bv | |
} | |
@stg_ap_pp_info = external global [0 x i64] | |
declare cc 10 void @ghczmprim_GHCziClasses_zl_info(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%s27I_info_struct = type <{i64, i64, i64}> | |
@s27I_info_itable = internal constant %s27I_info_struct<{i64 8589934604, i64 1, i64 10}>, section "X98A__STRIP,__me39", align 8 | |
define internal cc 10 void @s27I_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me40" | |
{ | |
c3dj: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3dk = load i64** %Sp_Var | |
%ln3dl = getelementptr inbounds i64* %ln3dk, i32 -9 | |
%ln3dm = ptrtoint i64* %ln3dl to i64 | |
%ln3dn = load i64* %SpLim_Var | |
%ln3do = icmp ult i64 %ln3dm, %ln3dn | |
br i1 %ln3do, label %c3dq, label %n3dr | |
n3dr: | |
%ln3ds = load i64* %R1_Var | |
%ln3dt = load i64** %Sp_Var | |
%ln3du = getelementptr inbounds i64* %ln3dt, i32 -3 | |
store i64 %ln3ds, i64* %ln3du | |
%ln3dv = load i64* %R1_Var | |
%ln3dw = add i64 %ln3dv, 6 | |
%ln3dx = inttoptr i64 %ln3dw to i64* | |
%ln3dy = load i64* %ln3dx | |
%ln3dz = load i64** %Sp_Var | |
%ln3dA = getelementptr inbounds i64* %ln3dz, i32 -2 | |
store i64 %ln3dy, i64* %ln3dA | |
%ln3dB = load i64* %R3_Var | |
%ln3dC = load i64** %Sp_Var | |
%ln3dD = getelementptr inbounds i64* %ln3dC, i32 -1 | |
store i64 %ln3dB, i64* %ln3dD | |
%ln3dE = load i64* %R2_Var | |
store i64 %ln3dE, i64* %R1_Var | |
%ln3dF = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29h_info to i64 | |
%ln3dG = load i64** %Sp_Var | |
%ln3dH = getelementptr inbounds i64* %ln3dG, i32 -4 | |
store i64 %ln3dF, i64* %ln3dH | |
%ln3dI = load i64** %Sp_Var | |
%ln3dJ = getelementptr inbounds i64* %ln3dI, i32 -4 | |
%ln3dK = ptrtoint i64* %ln3dJ to i64 | |
%ln3dL = inttoptr i64 %ln3dK to i64* | |
store i64* %ln3dL, i64** %Sp_Var | |
%ln3dM = load i64* %R1_Var | |
%ln3dN = and i64 %ln3dM, 7 | |
%ln3dO = icmp ne i64 %ln3dN, 0 | |
br i1 %ln3dO, label %c3dR, label %n3dS | |
n3dS: | |
%ln3dT = load i64* %R1_Var | |
%ln3dU = inttoptr i64 %ln3dT to i64* | |
%ln3dV = load i64* %ln3dU | |
%ln3dW = inttoptr i64 %ln3dV to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3dX = load i64** %Base_Var | |
%ln3dY = load i64** %Sp_Var | |
%ln3dZ = load i64** %Hp_Var | |
%ln3e0 = load i64* %R1_Var | |
%ln3e1 = load i64* %R2_Var | |
%ln3e2 = load i64* %R3_Var | |
%ln3e3 = load i64* %R4_Var | |
%ln3e4 = load i64* %R5_Var | |
%ln3e5 = load i64* %R6_Var | |
%ln3e6 = load i64* %SpLim_Var | |
%ln3e7 = load float* %F1_Var | |
%ln3e8 = load float* %F2_Var | |
%ln3e9 = load float* %F3_Var | |
%ln3ea = load float* %F4_Var | |
%ln3eb = load double* %D1_Var | |
%ln3ec = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3dW( i64* %ln3dX, i64* %ln3dY, i64* %ln3dZ, i64 %ln3e0, i64 %ln3e1, i64 %ln3e2, i64 %ln3e3, i64 %ln3e4, i64 %ln3e5, i64 %ln3e6, float %ln3e7, float %ln3e8, float %ln3e9, float %ln3ea, double %ln3eb, double %ln3ec ) nounwind | |
ret void | |
c3dq: | |
%ln3ed = load i64** %Base_Var | |
%ln3ee = getelementptr inbounds i64* %ln3ed, i32 -1 | |
%ln3ef = bitcast i64* %ln3ee to i64* | |
%ln3eg = load i64* %ln3ef | |
%ln3eh = inttoptr i64 %ln3eg to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3ei = load i64** %Base_Var | |
%ln3ej = load i64** %Sp_Var | |
%ln3ek = load i64** %Hp_Var | |
%ln3el = load i64* %R1_Var | |
%ln3em = load i64* %R2_Var | |
%ln3en = load i64* %R3_Var | |
%ln3eo = load i64* %R4_Var | |
%ln3ep = load i64* %R5_Var | |
%ln3eq = load i64* %R6_Var | |
%ln3er = load i64* %SpLim_Var | |
%ln3es = load float* %F1_Var | |
%ln3et = load float* %F2_Var | |
%ln3eu = load float* %F3_Var | |
%ln3ev = load float* %F4_Var | |
%ln3ew = load double* %D1_Var | |
%ln3ex = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3eh( i64* %ln3ei, i64* %ln3ej, i64* %ln3ek, i64 %ln3el, i64 %ln3em, i64 %ln3en, i64 %ln3eo, i64 %ln3ep, i64 %ln3eq, i64 %ln3er, float %ln3es, float %ln3et, float %ln3eu, float %ln3ev, double %ln3ew, double %ln3ex ) nounwind | |
ret void | |
c3dR: | |
%ln3ey = load i64** %Base_Var | |
%ln3ez = load i64** %Sp_Var | |
%ln3eA = load i64** %Hp_Var | |
%ln3eB = load i64* %R1_Var | |
%ln3eC = load i64* %R2_Var | |
%ln3eD = load i64* %R3_Var | |
%ln3eE = load i64* %R4_Var | |
%ln3eF = load i64* %R5_Var | |
%ln3eG = load i64* %R6_Var | |
%ln3eH = load i64* %SpLim_Var | |
%ln3eI = load float* %F1_Var | |
%ln3eJ = load float* %F2_Var | |
%ln3eK = load float* %F3_Var | |
%ln3eL = load float* %F4_Var | |
%ln3eM = load double* %D1_Var | |
%ln3eN = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29h_info( i64* %ln3ey, i64* %ln3ez, i64* %ln3eA, i64 %ln3eB, i64 %ln3eC, i64 %ln3eD, i64 %ln3eE, i64 %ln3eF, i64 %ln3eG, i64 %ln3eH, float %ln3eI, float %ln3eJ, float %ln3eK, float %ln3eL, double %ln3eM, double %ln3eN ) nounwind | |
ret void | |
} | |
%s29d_ret_struct = type <{i64, i64}> | |
@s29d_info_itable = internal constant %s29d_ret_struct<{i64 2, i64 32}>, section "X98A__STRIP,__me41", align 8 | |
define internal cc 10 void @s29d_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me42" | |
{ | |
c3fn: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3fo = load i64** %Sp_Var | |
%ln3fp = getelementptr inbounds i64* %ln3fo, i32 1 | |
%ln3fq = bitcast i64* %ln3fp to i64* | |
%ln3fr = load i64* %ln3fq | |
store i64 %ln3fr, i64* %R2_Var | |
%ln3fs = load i64** %Sp_Var | |
%ln3ft = getelementptr inbounds i64* %ln3fs, i32 1 | |
%ln3fu = ptrtoint i64* %ln3ft to i64 | |
%ln3fv = inttoptr i64 %ln3fu to i64* | |
store i64* %ln3fv, i64** %Sp_Var | |
%ln3fw = load i64** %Base_Var | |
%ln3fx = load i64** %Sp_Var | |
%ln3fy = load i64** %Hp_Var | |
%ln3fz = load i64* %R1_Var | |
%ln3fA = load i64* %R2_Var | |
%ln3fB = load i64* %R3_Var | |
%ln3fC = load i64* %R4_Var | |
%ln3fD = load i64* %R5_Var | |
%ln3fE = load i64* %R6_Var | |
%ln3fF = load i64* %SpLim_Var | |
%ln3fG = load float* %F1_Var | |
%ln3fH = load float* %F2_Var | |
%ln3fI = load float* %F3_Var | |
%ln3fJ = load float* %F4_Var | |
%ln3fK = load double* %D1_Var | |
%ln3fL = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s27U_info( i64* %ln3fw, i64* %ln3fx, i64* %ln3fy, i64 %ln3fz, i64 %ln3fA, i64 %ln3fB, i64 %ln3fC, i64 %ln3fD, i64 %ln3fE, i64 %ln3fF, float %ln3fG, float %ln3fH, float %ln3fI, float %ln3fJ, double %ln3fK, double %ln3fL ) nounwind | |
ret void | |
} | |
%s29j_ret_struct = type <{i64, i64}> | |
@s29j_info_itable = internal constant %s29j_ret_struct<{i64 2, i64 32}>, section "X98A__STRIP,__me43", align 8 | |
define internal cc 10 void @s29j_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me44" | |
{ | |
c3h0: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc3fP = alloca i64, i32 1 | |
%ln3h1 = load i64* %R1_Var | |
%ln3h2 = and i64 %ln3h1, 7 | |
store i64 %ln3h2, i64* %lc3fP | |
%ln3h3 = load i64* %lc3fP | |
%ln3h4 = icmp uge i64 %ln3h3, 2 | |
br i1 %ln3h4, label %c3h5, label %n3h6 | |
n3h6: | |
%ln3h7 = load i64** %Sp_Var | |
%ln3h8 = getelementptr inbounds i64* %ln3h7, i32 1 | |
%ln3h9 = bitcast i64* %ln3h8 to i64* | |
%ln3ha = load i64* %ln3h9 | |
store i64 %ln3ha, i64* %R1_Var | |
%ln3hb = load i64** %Sp_Var | |
%ln3hc = getelementptr inbounds i64* %ln3hb, i32 3 | |
%ln3hd = ptrtoint i64* %ln3hc to i64 | |
%ln3he = inttoptr i64 %ln3hd to i64* | |
store i64* %ln3he, i64** %Sp_Var | |
%ln3hf = load i64* %R1_Var | |
%ln3hg = and i64 %ln3hf, -8 | |
store i64 %ln3hg, i64* %R1_Var | |
%ln3hh = load i64* %R1_Var | |
%ln3hi = inttoptr i64 %ln3hh to i64* | |
%ln3hj = load i64* %ln3hi | |
%ln3hk = inttoptr i64 %ln3hj to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3hl = load i64** %Base_Var | |
%ln3hm = load i64** %Sp_Var | |
%ln3hn = load i64** %Hp_Var | |
%ln3ho = load i64* %R1_Var | |
%ln3hp = load i64* %R2_Var | |
%ln3hq = load i64* %R3_Var | |
%ln3hr = load i64* %R4_Var | |
%ln3hs = load i64* %R5_Var | |
%ln3ht = load i64* %R6_Var | |
%ln3hu = load i64* %SpLim_Var | |
%ln3hv = load float* %F1_Var | |
%ln3hw = load float* %F2_Var | |
%ln3hx = load float* %F3_Var | |
%ln3hy = load float* %F4_Var | |
%ln3hz = load double* %D1_Var | |
%ln3hA = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3hk( i64* %ln3hl, i64* %ln3hm, i64* %ln3hn, i64 %ln3ho, i64 %ln3hp, i64 %ln3hq, i64 %ln3hr, i64 %ln3hs, i64 %ln3ht, i64 %ln3hu, float %ln3hv, float %ln3hw, float %ln3hx, float %ln3hy, double %ln3hz, double %ln3hA ) nounwind | |
ret void | |
c3h5: | |
%ln3hB = load i64** %Sp_Var | |
%ln3hC = getelementptr inbounds i64* %ln3hB, i32 1 | |
%ln3hD = bitcast i64* %ln3hC to i64* | |
%ln3hE = load i64* %ln3hD | |
store i64 %ln3hE, i64* %R2_Var | |
%ln3hF = load i64* %R1_Var | |
%ln3hG = add i64 %ln3hF, 14 | |
%ln3hH = inttoptr i64 %ln3hG to i64* | |
%ln3hI = load i64* %ln3hH | |
%ln3hJ = load i64** %Sp_Var | |
%ln3hK = getelementptr inbounds i64* %ln3hJ, i32 1 | |
store i64 %ln3hI, i64* %ln3hK | |
%ln3hL = load i64* %R1_Var | |
%ln3hM = add i64 %ln3hL, 6 | |
%ln3hN = inttoptr i64 %ln3hM to i64* | |
%ln3hO = load i64* %ln3hN | |
store i64 %ln3hO, i64* %R3_Var | |
%ln3hP = load i64** %Sp_Var | |
%ln3hQ = getelementptr inbounds i64* %ln3hP, i32 2 | |
%ln3hR = bitcast i64* %ln3hQ to i64* | |
%ln3hS = load i64* %ln3hR | |
store i64 %ln3hS, i64* %R1_Var | |
%ln3hT = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29d_info to i64 | |
%ln3hU = load i64** %Sp_Var | |
%ln3hV = getelementptr inbounds i64* %ln3hU, i32 0 | |
store i64 %ln3hT, i64* %ln3hV | |
%ln3hW = load i64** %Base_Var | |
%ln3hX = load i64** %Sp_Var | |
%ln3hY = load i64** %Hp_Var | |
%ln3hZ = load i64* %R1_Var | |
%ln3i0 = load i64* %R2_Var | |
%ln3i1 = load i64* %R3_Var | |
%ln3i2 = load i64* %R4_Var | |
%ln3i3 = load i64* %R5_Var | |
%ln3i4 = load i64* %R6_Var | |
%ln3i5 = load i64* %SpLim_Var | |
%ln3i6 = load float* %F1_Var | |
%ln3i7 = load float* %F2_Var | |
%ln3i8 = load float* %F3_Var | |
%ln3i9 = load float* %F4_Var | |
%ln3ia = load double* %D1_Var | |
%ln3ib = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s27I_info( i64* %ln3hW, i64* %ln3hX, i64* %ln3hY, i64 %ln3hZ, i64 %ln3i0, i64 %ln3i1, i64 %ln3i2, i64 %ln3i3, i64 %ln3i4, i64 %ln3i5, float %ln3i6, float %ln3i7, float %ln3i8, float %ln3i9, double %ln3ia, double %ln3ib ) nounwind | |
ret void | |
} | |
%s27U_ret_struct = type <{i64, i64}> | |
@s27U_info_itable = internal constant %s27U_ret_struct<{i64 1, i64 32}>, section "X98A__STRIP,__me45", align 8 | |
define internal cc 10 void @s27U_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me46" | |
{ | |
c3j2: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3j3 = load i64* %R1_Var | |
%ln3j4 = load i64** %Sp_Var | |
%ln3j5 = getelementptr inbounds i64* %ln3j4, i32 0 | |
store i64 %ln3j3, i64* %ln3j5 | |
%ln3j6 = load i64* %R2_Var | |
store i64 %ln3j6, i64* %R1_Var | |
%ln3j7 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29j_info to i64 | |
%ln3j8 = load i64** %Sp_Var | |
%ln3j9 = getelementptr inbounds i64* %ln3j8, i32 -1 | |
store i64 %ln3j7, i64* %ln3j9 | |
%ln3ja = load i64** %Sp_Var | |
%ln3jb = getelementptr inbounds i64* %ln3ja, i32 -1 | |
%ln3jc = ptrtoint i64* %ln3jb to i64 | |
%ln3jd = inttoptr i64 %ln3jc to i64* | |
store i64* %ln3jd, i64** %Sp_Var | |
%ln3je = load i64* %R1_Var | |
%ln3jf = and i64 %ln3je, 7 | |
%ln3jg = icmp ne i64 %ln3jf, 0 | |
br i1 %ln3jg, label %c3jj, label %n3jk | |
n3jk: | |
%ln3jl = load i64* %R1_Var | |
%ln3jm = inttoptr i64 %ln3jl to i64* | |
%ln3jn = load i64* %ln3jm | |
%ln3jo = inttoptr i64 %ln3jn to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3jp = load i64** %Base_Var | |
%ln3jq = load i64** %Sp_Var | |
%ln3jr = load i64** %Hp_Var | |
%ln3js = load i64* %R1_Var | |
%ln3jt = load i64* %R2_Var | |
%ln3ju = load i64* %R3_Var | |
%ln3jv = load i64* %R4_Var | |
%ln3jw = load i64* %R5_Var | |
%ln3jx = load i64* %R6_Var | |
%ln3jy = load i64* %SpLim_Var | |
%ln3jz = load float* %F1_Var | |
%ln3jA = load float* %F2_Var | |
%ln3jB = load float* %F3_Var | |
%ln3jC = load float* %F4_Var | |
%ln3jD = load double* %D1_Var | |
%ln3jE = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3jo( i64* %ln3jp, i64* %ln3jq, i64* %ln3jr, i64 %ln3js, i64 %ln3jt, i64 %ln3ju, i64 %ln3jv, i64 %ln3jw, i64 %ln3jx, i64 %ln3jy, float %ln3jz, float %ln3jA, float %ln3jB, float %ln3jC, double %ln3jD, double %ln3jE ) nounwind | |
ret void | |
c3jj: | |
%ln3jF = load i64** %Base_Var | |
%ln3jG = load i64** %Sp_Var | |
%ln3jH = load i64** %Hp_Var | |
%ln3jI = load i64* %R1_Var | |
%ln3jJ = load i64* %R2_Var | |
%ln3jK = load i64* %R3_Var | |
%ln3jL = load i64* %R4_Var | |
%ln3jM = load i64* %R5_Var | |
%ln3jN = load i64* %R6_Var | |
%ln3jO = load i64* %SpLim_Var | |
%ln3jP = load float* %F1_Var | |
%ln3jQ = load float* %F2_Var | |
%ln3jR = load float* %F3_Var | |
%ln3jS = load float* %F4_Var | |
%ln3jT = load double* %D1_Var | |
%ln3jU = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29j_info( i64* %ln3jF, i64* %ln3jG, i64* %ln3jH, i64 %ln3jI, i64 %ln3jJ, i64 %ln3jK, i64 %ln3jL, i64 %ln3jM, i64 %ln3jN, i64 %ln3jO, float %ln3jP, float %ln3jQ, float %ln3jR, float %ln3jS, double %ln3jT, double %ln3jU ) nounwind | |
ret void | |
} | |
%Main_treeFromList_info_struct = type <{i64, i64, i64}> | |
@Main_treeFromList_info_itable = constant %Main_treeFromList_info_struct<{i64 8589934604, i64 0, i64 15}>, section "X98A__STRIP,__me47", align 8 | |
define cc 10 void @Main_treeFromList_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me48" | |
{ | |
c3la: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3lb = load i64** %Sp_Var | |
%ln3lc = getelementptr inbounds i64* %ln3lb, i32 -3 | |
%ln3ld = ptrtoint i64* %ln3lc to i64 | |
%ln3le = load i64* %SpLim_Var | |
%ln3lf = icmp ult i64 %ln3ld, %ln3le | |
br i1 %ln3lf, label %c3lh, label %n3li | |
n3li: | |
%ln3lj = load i64** %Hp_Var | |
%ln3lk = getelementptr inbounds i64* %ln3lj, i32 2 | |
%ln3ll = ptrtoint i64* %ln3lk to i64 | |
%ln3lm = inttoptr i64 %ln3ll to i64* | |
store i64* %ln3lm, i64** %Hp_Var | |
%ln3ln = load i64** %Hp_Var | |
%ln3lo = ptrtoint i64* %ln3ln to i64 | |
%ln3lp = load i64** %Base_Var | |
%ln3lq = getelementptr inbounds i64* %ln3lp, i32 18 | |
%ln3lr = bitcast i64* %ln3lq to i64* | |
%ln3ls = load i64* %ln3lr | |
%ln3lt = icmp ugt i64 %ln3lo, %ln3ls | |
br i1 %ln3lt, label %c3lv, label %n3lw | |
n3lw: | |
%ln3lx = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s27I_info to i64 | |
%ln3ly = load i64** %Hp_Var | |
%ln3lz = getelementptr inbounds i64* %ln3ly, i32 -1 | |
store i64 %ln3lx, i64* %ln3lz | |
%ln3lA = load i64* %R2_Var | |
%ln3lB = load i64** %Hp_Var | |
%ln3lC = getelementptr inbounds i64* %ln3lB, i32 0 | |
store i64 %ln3lA, i64* %ln3lC | |
%ln3lD = load i64** %Hp_Var | |
%ln3lE = ptrtoint i64* %ln3lD to i64 | |
%ln3lF = add i64 %ln3lE, -6 | |
%ln3lG = load i64** %Sp_Var | |
%ln3lH = getelementptr inbounds i64* %ln3lG, i32 -1 | |
store i64 %ln3lF, i64* %ln3lH | |
%ln3lI = ptrtoint %Main_Empty_closure_struct* @Main_Empty_closure to i64 | |
%ln3lJ = add i64 %ln3lI, 1 | |
store i64 %ln3lJ, i64* %R1_Var | |
%ln3lK = load i64* %R3_Var | |
store i64 %ln3lK, i64* %R2_Var | |
%ln3lL = load i64** %Sp_Var | |
%ln3lM = getelementptr inbounds i64* %ln3lL, i32 -2 | |
%ln3lN = ptrtoint i64* %ln3lM to i64 | |
%ln3lO = inttoptr i64 %ln3lN to i64* | |
store i64* %ln3lO, i64** %Sp_Var | |
%ln3lP = load i64** %Base_Var | |
%ln3lQ = load i64** %Sp_Var | |
%ln3lR = load i64** %Hp_Var | |
%ln3lS = load i64* %R1_Var | |
%ln3lT = load i64* %R2_Var | |
%ln3lU = load i64* %R3_Var | |
%ln3lV = load i64* %R4_Var | |
%ln3lW = load i64* %R5_Var | |
%ln3lX = load i64* %R6_Var | |
%ln3lY = load i64* %SpLim_Var | |
%ln3lZ = load float* %F1_Var | |
%ln3m0 = load float* %F2_Var | |
%ln3m1 = load float* %F3_Var | |
%ln3m2 = load float* %F4_Var | |
%ln3m3 = load double* %D1_Var | |
%ln3m4 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s27U_info( i64* %ln3lP, i64* %ln3lQ, i64* %ln3lR, i64 %ln3lS, i64 %ln3lT, i64 %ln3lU, i64 %ln3lV, i64 %ln3lW, i64 %ln3lX, i64 %ln3lY, float %ln3lZ, float %ln3m0, float %ln3m1, float %ln3m2, double %ln3m3, double %ln3m4 ) nounwind | |
ret void | |
c3lh: | |
%ln3m5 = ptrtoint %Main_treeFromList_closure_struct* @Main_treeFromList_closure to i64 | |
store i64 %ln3m5, i64* %R1_Var | |
%ln3m6 = load i64** %Base_Var | |
%ln3m7 = getelementptr inbounds i64* %ln3m6, i32 -1 | |
%ln3m8 = bitcast i64* %ln3m7 to i64* | |
%ln3m9 = load i64* %ln3m8 | |
%ln3ma = inttoptr i64 %ln3m9 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3mb = load i64** %Base_Var | |
%ln3mc = load i64** %Sp_Var | |
%ln3md = load i64** %Hp_Var | |
%ln3me = load i64* %R1_Var | |
%ln3mf = load i64* %R2_Var | |
%ln3mg = load i64* %R3_Var | |
%ln3mh = load i64* %R4_Var | |
%ln3mi = load i64* %R5_Var | |
%ln3mj = load i64* %R6_Var | |
%ln3mk = load i64* %SpLim_Var | |
%ln3ml = load float* %F1_Var | |
%ln3mm = load float* %F2_Var | |
%ln3mn = load float* %F3_Var | |
%ln3mo = load float* %F4_Var | |
%ln3mp = load double* %D1_Var | |
%ln3mq = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3ma( i64* %ln3mb, i64* %ln3mc, i64* %ln3md, i64 %ln3me, i64 %ln3mf, i64 %ln3mg, i64 %ln3mh, i64 %ln3mi, i64 %ln3mj, i64 %ln3mk, float %ln3ml, float %ln3mm, float %ln3mn, float %ln3mo, double %ln3mp, double %ln3mq ) nounwind | |
ret void | |
c3lv: | |
%ln3mr = load i64** %Base_Var | |
%ln3ms = getelementptr inbounds i64* %ln3mr, i32 24 | |
store i64 16, i64* %ln3ms | |
br label %c3lh | |
} | |
%s29g_ret_struct = type <{i64, i64}> | |
@s29g_info_itable = internal constant %s29g_ret_struct<{i64 0, i64 32}>, section "X98A__STRIP,__me49", align 8 | |
define internal cc 10 void @s29g_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me50" | |
{ | |
c3mW: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3mX = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZMZN_closure to i64 | |
%ln3mY = add i64 %ln3mX, 1 | |
store i64 %ln3mY, i64* %R2_Var | |
%ln3mZ = load i64* %R1_Var | |
store i64 %ln3mZ, i64* %R3_Var | |
%ln3n0 = load i64** %Sp_Var | |
%ln3n1 = getelementptr inbounds i64* %ln3n0, i32 1 | |
%ln3n2 = ptrtoint i64* %ln3n1 to i64 | |
%ln3n3 = inttoptr i64 %ln3n2 to i64* | |
store i64* %ln3n3, i64** %Sp_Var | |
%ln3n4 = load i64** %Base_Var | |
%ln3n5 = load i64** %Sp_Var | |
%ln3n6 = load i64** %Hp_Var | |
%ln3n7 = load i64* %R1_Var | |
%ln3n8 = load i64* %R2_Var | |
%ln3n9 = load i64* %R3_Var | |
%ln3na = load i64* %R4_Var | |
%ln3nb = load i64* %R5_Var | |
%ln3nc = load i64* %R6_Var | |
%ln3nd = load i64* %SpLim_Var | |
%ln3ne = load float* %F1_Var | |
%ln3nf = load float* %F2_Var | |
%ln3ng = load float* %F3_Var | |
%ln3nh = load float* %F4_Var | |
%ln3ni = load double* %D1_Var | |
%ln3nj = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_flattenTreezuhelper_info( i64* %ln3n4, i64* %ln3n5, i64* %ln3n6, i64 %ln3n7, i64 %ln3n8, i64 %ln3n9, i64 %ln3na, i64 %ln3nb, i64 %ln3nc, i64 %ln3nd, float %ln3ne, float %ln3nf, float %ln3ng, float %ln3nh, double %ln3ni, double %ln3nj ) nounwind | |
ret void | |
} | |
%Main_listSortzuzdslistSort_info_struct = type <{i64, i64, i64}> | |
@Main_listSortzuzdslistSort_info_itable = constant %Main_listSortzuzdslistSort_info_struct<{i64 4294967301, i64 0, i64 15}>, section "X98A__STRIP,__me51", align 8 | |
define cc 10 void @Main_listSortzuzdslistSort_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me52" | |
{ | |
c3oa: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3ob = load i64** %Sp_Var | |
%ln3oc = getelementptr inbounds i64* %ln3ob, i32 -1 | |
%ln3od = ptrtoint i64* %ln3oc to i64 | |
%ln3oe = load i64* %SpLim_Var | |
%ln3of = icmp ult i64 %ln3od, %ln3oe | |
br i1 %ln3of, label %c3oh, label %n3oi | |
n3oi: | |
%ln3oj = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29g_info to i64 | |
%ln3ok = load i64** %Sp_Var | |
%ln3ol = getelementptr inbounds i64* %ln3ok, i32 -1 | |
store i64 %ln3oj, i64* %ln3ol | |
%ln3om = load i64** %Sp_Var | |
%ln3on = getelementptr inbounds i64* %ln3om, i32 -1 | |
%ln3oo = ptrtoint i64* %ln3on to i64 | |
%ln3op = inttoptr i64 %ln3oo to i64* | |
store i64* %ln3op, i64** %Sp_Var | |
%ln3oq = load i64** %Base_Var | |
%ln3or = load i64** %Sp_Var | |
%ln3os = load i64** %Hp_Var | |
%ln3ot = load i64* %R1_Var | |
%ln3ou = load i64* %R2_Var | |
%ln3ov = load i64* %R3_Var | |
%ln3ow = load i64* %R4_Var | |
%ln3ox = load i64* %R5_Var | |
%ln3oy = load i64* %R6_Var | |
%ln3oz = load i64* %SpLim_Var | |
%ln3oA = load float* %F1_Var | |
%ln3oB = load float* %F2_Var | |
%ln3oC = load float* %F3_Var | |
%ln3oD = load float* %F4_Var | |
%ln3oE = load double* %D1_Var | |
%ln3oF = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_listSortzuzdstreeFromList_info( i64* %ln3oq, i64* %ln3or, i64* %ln3os, i64 %ln3ot, i64 %ln3ou, i64 %ln3ov, i64 %ln3ow, i64 %ln3ox, i64 %ln3oy, i64 %ln3oz, float %ln3oA, float %ln3oB, float %ln3oC, float %ln3oD, double %ln3oE, double %ln3oF ) nounwind | |
ret void | |
c3oh: | |
%ln3oG = ptrtoint %Main_listSortzuzdslistSort_closure_struct* @Main_listSortzuzdslistSort_closure to i64 | |
store i64 %ln3oG, i64* %R1_Var | |
%ln3oH = load i64** %Base_Var | |
%ln3oI = getelementptr inbounds i64* %ln3oH, i32 -1 | |
%ln3oJ = bitcast i64* %ln3oI to i64* | |
%ln3oK = load i64* %ln3oJ | |
%ln3oL = inttoptr i64 %ln3oK to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3oM = load i64** %Base_Var | |
%ln3oN = load i64** %Sp_Var | |
%ln3oO = load i64** %Hp_Var | |
%ln3oP = load i64* %R1_Var | |
%ln3oQ = load i64* %R2_Var | |
%ln3oR = load i64* %R3_Var | |
%ln3oS = load i64* %R4_Var | |
%ln3oT = load i64* %R5_Var | |
%ln3oU = load i64* %R6_Var | |
%ln3oV = load i64* %SpLim_Var | |
%ln3oW = load float* %F1_Var | |
%ln3oX = load float* %F2_Var | |
%ln3oY = load float* %F3_Var | |
%ln3oZ = load float* %F4_Var | |
%ln3p0 = load double* %D1_Var | |
%ln3p1 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3oL( i64* %ln3oM, i64* %ln3oN, i64* %ln3oO, i64 %ln3oP, i64 %ln3oQ, i64 %ln3oR, i64 %ln3oS, i64 %ln3oT, i64 %ln3oU, i64 %ln3oV, float %ln3oW, float %ln3oX, float %ln3oY, float %ln3oZ, double %ln3p0, double %ln3p1 ) nounwind | |
ret void | |
} | |
%s29c_ret_struct = type <{i64, i64}> | |
@s29c_info_itable = internal constant %s29c_ret_struct<{i64 0, i64 32}>, section "X98A__STRIP,__me53", align 8 | |
define internal cc 10 void @s29c_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me54" | |
{ | |
c3pv: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3pw = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZMZN_closure to i64 | |
%ln3px = add i64 %ln3pw, 1 | |
store i64 %ln3px, i64* %R2_Var | |
%ln3py = load i64* %R1_Var | |
store i64 %ln3py, i64* %R3_Var | |
%ln3pz = load i64** %Sp_Var | |
%ln3pA = getelementptr inbounds i64* %ln3pz, i32 1 | |
%ln3pB = ptrtoint i64* %ln3pA to i64 | |
%ln3pC = inttoptr i64 %ln3pB to i64* | |
store i64* %ln3pC, i64** %Sp_Var | |
%ln3pD = load i64** %Base_Var | |
%ln3pE = load i64** %Sp_Var | |
%ln3pF = load i64** %Hp_Var | |
%ln3pG = load i64* %R1_Var | |
%ln3pH = load i64* %R2_Var | |
%ln3pI = load i64* %R3_Var | |
%ln3pJ = load i64* %R4_Var | |
%ln3pK = load i64* %R5_Var | |
%ln3pL = load i64* %R6_Var | |
%ln3pM = load i64* %SpLim_Var | |
%ln3pN = load float* %F1_Var | |
%ln3pO = load float* %F2_Var | |
%ln3pP = load float* %F3_Var | |
%ln3pQ = load float* %F4_Var | |
%ln3pR = load double* %D1_Var | |
%ln3pS = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_flattenTreezuhelper_info( i64* %ln3pD, i64* %ln3pE, i64* %ln3pF, i64 %ln3pG, i64 %ln3pH, i64 %ln3pI, i64 %ln3pJ, i64 %ln3pK, i64 %ln3pL, i64 %ln3pM, float %ln3pN, float %ln3pO, float %ln3pP, float %ln3pQ, double %ln3pR, double %ln3pS ) nounwind | |
ret void | |
} | |
%Main_listSort_info_struct = type <{i64, i64, i64}> | |
@Main_listSort_info_itable = constant %Main_listSort_info_struct<{i64 8589934604, i64 0, i64 15}>, section "X98A__STRIP,__me55", align 8 | |
define cc 10 void @Main_listSort_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me56" | |
{ | |
c3qJ: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3qK = load i64** %Sp_Var | |
%ln3qL = getelementptr inbounds i64* %ln3qK, i32 -1 | |
%ln3qM = ptrtoint i64* %ln3qL to i64 | |
%ln3qN = load i64* %SpLim_Var | |
%ln3qO = icmp ult i64 %ln3qM, %ln3qN | |
br i1 %ln3qO, label %c3qQ, label %n3qR | |
n3qR: | |
%ln3qS = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29c_info to i64 | |
%ln3qT = load i64** %Sp_Var | |
%ln3qU = getelementptr inbounds i64* %ln3qT, i32 -1 | |
store i64 %ln3qS, i64* %ln3qU | |
%ln3qV = load i64** %Sp_Var | |
%ln3qW = getelementptr inbounds i64* %ln3qV, i32 -1 | |
%ln3qX = ptrtoint i64* %ln3qW to i64 | |
%ln3qY = inttoptr i64 %ln3qX to i64* | |
store i64* %ln3qY, i64** %Sp_Var | |
%ln3qZ = load i64** %Base_Var | |
%ln3r0 = load i64** %Sp_Var | |
%ln3r1 = load i64** %Hp_Var | |
%ln3r2 = load i64* %R1_Var | |
%ln3r3 = load i64* %R2_Var | |
%ln3r4 = load i64* %R3_Var | |
%ln3r5 = load i64* %R4_Var | |
%ln3r6 = load i64* %R5_Var | |
%ln3r7 = load i64* %R6_Var | |
%ln3r8 = load i64* %SpLim_Var | |
%ln3r9 = load float* %F1_Var | |
%ln3ra = load float* %F2_Var | |
%ln3rb = load float* %F3_Var | |
%ln3rc = load float* %F4_Var | |
%ln3rd = load double* %D1_Var | |
%ln3re = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_treeFromList_info( i64* %ln3qZ, i64* %ln3r0, i64* %ln3r1, i64 %ln3r2, i64 %ln3r3, i64 %ln3r4, i64 %ln3r5, i64 %ln3r6, i64 %ln3r7, i64 %ln3r8, float %ln3r9, float %ln3ra, float %ln3rb, float %ln3rc, double %ln3rd, double %ln3re ) nounwind | |
ret void | |
c3qQ: | |
%ln3rf = ptrtoint %Main_listSort_closure_struct* @Main_listSort_closure to i64 | |
store i64 %ln3rf, i64* %R1_Var | |
%ln3rg = load i64** %Base_Var | |
%ln3rh = getelementptr inbounds i64* %ln3rg, i32 -1 | |
%ln3ri = bitcast i64* %ln3rh to i64* | |
%ln3rj = load i64* %ln3ri | |
%ln3rk = inttoptr i64 %ln3rj to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3rl = load i64** %Base_Var | |
%ln3rm = load i64** %Sp_Var | |
%ln3rn = load i64** %Hp_Var | |
%ln3ro = load i64* %R1_Var | |
%ln3rp = load i64* %R2_Var | |
%ln3rq = load i64* %R3_Var | |
%ln3rr = load i64* %R4_Var | |
%ln3rs = load i64* %R5_Var | |
%ln3rt = load i64* %R6_Var | |
%ln3ru = load i64* %SpLim_Var | |
%ln3rv = load float* %F1_Var | |
%ln3rw = load float* %F2_Var | |
%ln3rx = load float* %F3_Var | |
%ln3ry = load float* %F4_Var | |
%ln3rz = load double* %D1_Var | |
%ln3rA = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3rk( i64* %ln3rl, i64* %ln3rm, i64* %ln3rn, i64 %ln3ro, i64 %ln3rp, i64 %ln3rq, i64 %ln3rr, i64 %ln3rs, i64 %ln3rt, i64 %ln3ru, float %ln3rv, float %ln3rw, float %ln3rx, float %ln3ry, double %ln3rz, double %ln3rA ) nounwind | |
ret void | |
} | |
%s28o_info_struct = type <{i64, i64, i64}> | |
@s28o_info_itable = internal constant %s28o_info_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_zdwa_srt_struct* @Main_zdwa_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s28o_info to i64)),i64 32), i64 1, i64 12884901905}>, section "X98A__STRIP,__me57", align 8 | |
define internal cc 10 void @s28o_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me58" | |
{ | |
c3sP: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3sQ = load i64** %Sp_Var | |
%ln3sR = getelementptr inbounds i64* %ln3sQ, i32 -2 | |
%ln3sS = ptrtoint i64* %ln3sR to i64 | |
%ln3sT = load i64* %SpLim_Var | |
%ln3sU = icmp ult i64 %ln3sS, %ln3sT | |
br i1 %ln3sU, label %c3sW, label %n3sX | |
n3sX: | |
%ln3sY = ptrtoint [0 x i64]* @stg_upd_frame_info to i64 | |
%ln3sZ = load i64** %Sp_Var | |
%ln3t0 = getelementptr inbounds i64* %ln3sZ, i32 -2 | |
store i64 %ln3sY, i64* %ln3t0 | |
%ln3t1 = load i64* %R1_Var | |
%ln3t2 = load i64** %Sp_Var | |
%ln3t3 = getelementptr inbounds i64* %ln3t2, i32 -1 | |
store i64 %ln3t1, i64* %ln3t3 | |
%ln3t4 = ptrtoint [0 x i64]* @base_GHCziRead_zdfReadInt2_closure to i64 | |
%ln3t5 = add i64 %ln3t4, 2 | |
store i64 %ln3t5, i64* %R2_Var | |
%ln3t6 = load i64* %R1_Var | |
%ln3t7 = add i64 %ln3t6, 16 | |
%ln3t8 = inttoptr i64 %ln3t7 to i64* | |
%ln3t9 = load i64* %ln3t8 | |
store i64 %ln3t9, i64* %R3_Var | |
%ln3ta = load i64** %Sp_Var | |
%ln3tb = getelementptr inbounds i64* %ln3ta, i32 -2 | |
%ln3tc = ptrtoint i64* %ln3tb to i64 | |
%ln3td = inttoptr i64 %ln3tc to i64* | |
store i64* %ln3td, i64** %Sp_Var | |
%ln3te = load i64** %Base_Var | |
%ln3tf = load i64** %Sp_Var | |
%ln3tg = load i64** %Hp_Var | |
%ln3th = load i64* %R1_Var | |
%ln3ti = load i64* %R2_Var | |
%ln3tj = load i64* %R3_Var | |
%ln3tk = load i64* %R4_Var | |
%ln3tl = load i64* %R5_Var | |
%ln3tm = load i64* %R6_Var | |
%ln3tn = load i64* %SpLim_Var | |
%ln3to = load float* %F1_Var | |
%ln3tp = load float* %F2_Var | |
%ln3tq = load float* %F3_Var | |
%ln3tr = load float* %F4_Var | |
%ln3ts = load double* %D1_Var | |
%ln3tt = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_TextziRead_zdwread_info( i64* %ln3te, i64* %ln3tf, i64* %ln3tg, i64 %ln3th, i64 %ln3ti, i64 %ln3tj, i64 %ln3tk, i64 %ln3tl, i64 %ln3tm, i64 %ln3tn, float %ln3to, float %ln3tp, float %ln3tq, float %ln3tr, double %ln3ts, double %ln3tt ) nounwind | |
ret void | |
c3sW: | |
%ln3tu = load i64** %Base_Var | |
%ln3tv = getelementptr inbounds i64* %ln3tu, i32 -2 | |
%ln3tw = bitcast i64* %ln3tv to i64* | |
%ln3tx = load i64* %ln3tw | |
%ln3ty = inttoptr i64 %ln3tx to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3tz = load i64** %Base_Var | |
%ln3tA = load i64** %Sp_Var | |
%ln3tB = load i64** %Hp_Var | |
%ln3tC = load i64* %R1_Var | |
%ln3tD = load i64* %R2_Var | |
%ln3tE = load i64* %R3_Var | |
%ln3tF = load i64* %R4_Var | |
%ln3tG = load i64* %R5_Var | |
%ln3tH = load i64* %R6_Var | |
%ln3tI = load i64* %SpLim_Var | |
%ln3tJ = load float* %F1_Var | |
%ln3tK = load float* %F2_Var | |
%ln3tL = load float* %F3_Var | |
%ln3tM = load float* %F4_Var | |
%ln3tN = load double* %D1_Var | |
%ln3tO = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3ty( i64* %ln3tz, i64* %ln3tA, i64* %ln3tB, i64 %ln3tC, i64 %ln3tD, i64 %ln3tE, i64 %ln3tF, i64 %ln3tG, i64 %ln3tH, i64 %ln3tI, float %ln3tJ, float %ln3tK, float %ln3tL, float %ln3tM, double %ln3tN, double %ln3tO ) nounwind | |
ret void | |
} | |
declare cc 10 void @base_TextziRead_zdwread_info(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%s29k_ret_struct = type <{i64, i64, i64}> | |
@s29k_info_itable = internal constant %s29k_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_zdwa_srt_struct* @Main_zdwa_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29k_info to i64)),i64 32), i64 1, i64 12884901920}>, section "X98A__STRIP,__me59", align 8 | |
define internal cc 10 void @s29k_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me60" | |
{ | |
c3v8: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3v9 = load i64** %Hp_Var | |
%ln3va = getelementptr inbounds i64* %ln3v9, i32 6 | |
%ln3vb = ptrtoint i64* %ln3va to i64 | |
%ln3vc = inttoptr i64 %ln3vb to i64* | |
store i64* %ln3vc, i64** %Hp_Var | |
%ln3vd = load i64** %Hp_Var | |
%ln3ve = ptrtoint i64* %ln3vd to i64 | |
%ln3vf = load i64** %Base_Var | |
%ln3vg = getelementptr inbounds i64* %ln3vf, i32 18 | |
%ln3vh = bitcast i64* %ln3vg to i64* | |
%ln3vi = load i64* %ln3vh | |
%ln3vj = icmp ugt i64 %ln3ve, %ln3vi | |
br i1 %ln3vj, label %c3vm, label %n3vn | |
n3vn: | |
%ln3vo = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s28o_info to i64 | |
%ln3vp = load i64** %Hp_Var | |
%ln3vq = getelementptr inbounds i64* %ln3vp, i32 -5 | |
store i64 %ln3vo, i64* %ln3vq | |
%ln3vr = load i64** %Sp_Var | |
%ln3vs = getelementptr inbounds i64* %ln3vr, i32 1 | |
%ln3vt = bitcast i64* %ln3vs to i64* | |
%ln3vu = load i64* %ln3vt | |
%ln3vv = load i64** %Hp_Var | |
%ln3vw = getelementptr inbounds i64* %ln3vv, i32 -3 | |
store i64 %ln3vu, i64* %ln3vw | |
%ln3vx = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZC_con_info to i64 | |
%ln3vy = load i64** %Hp_Var | |
%ln3vz = getelementptr inbounds i64* %ln3vy, i32 -2 | |
store i64 %ln3vx, i64* %ln3vz | |
%ln3vA = load i64** %Hp_Var | |
%ln3vB = getelementptr inbounds i64* %ln3vA, i32 -5 | |
%ln3vC = ptrtoint i64* %ln3vB to i64 | |
%ln3vD = load i64** %Hp_Var | |
%ln3vE = getelementptr inbounds i64* %ln3vD, i32 -1 | |
store i64 %ln3vC, i64* %ln3vE | |
%ln3vF = load i64* %R1_Var | |
%ln3vG = load i64** %Hp_Var | |
%ln3vH = getelementptr inbounds i64* %ln3vG, i32 0 | |
store i64 %ln3vF, i64* %ln3vH | |
%ln3vI = load i64** %Hp_Var | |
%ln3vJ = ptrtoint i64* %ln3vI to i64 | |
%ln3vK = add i64 %ln3vJ, -14 | |
store i64 %ln3vK, i64* %R1_Var | |
%ln3vL = load i64** %Sp_Var | |
%ln3vM = getelementptr inbounds i64* %ln3vL, i32 2 | |
%ln3vN = ptrtoint i64* %ln3vM to i64 | |
%ln3vO = inttoptr i64 %ln3vN to i64* | |
store i64* %ln3vO, i64** %Sp_Var | |
%ln3vP = load i64** %Sp_Var | |
%ln3vQ = getelementptr inbounds i64* %ln3vP, i32 0 | |
%ln3vR = bitcast i64* %ln3vQ to i64* | |
%ln3vS = load i64* %ln3vR | |
%ln3vT = inttoptr i64 %ln3vS to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3vU = load i64** %Base_Var | |
%ln3vV = load i64** %Sp_Var | |
%ln3vW = load i64** %Hp_Var | |
%ln3vX = load i64* %R1_Var | |
%ln3vY = load i64* %R2_Var | |
%ln3vZ = load i64* %R3_Var | |
%ln3w0 = load i64* %R4_Var | |
%ln3w1 = load i64* %R5_Var | |
%ln3w2 = load i64* %R6_Var | |
%ln3w3 = load i64* %SpLim_Var | |
%ln3w4 = load float* %F1_Var | |
%ln3w5 = load float* %F2_Var | |
%ln3w6 = load float* %F3_Var | |
%ln3w7 = load float* %F4_Var | |
%ln3w8 = load double* %D1_Var | |
%ln3w9 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3vT( i64* %ln3vU, i64* %ln3vV, i64* %ln3vW, i64 %ln3vX, i64 %ln3vY, i64 %ln3vZ, i64 %ln3w0, i64 %ln3w1, i64 %ln3w2, i64 %ln3w3, float %ln3w4, float %ln3w5, float %ln3w6, float %ln3w7, double %ln3w8, double %ln3w9 ) nounwind | |
ret void | |
c3wa: | |
%ln3wb = load i64** %Base_Var | |
%ln3wc = getelementptr inbounds i64* %ln3wb, i32 8 | |
store i64 254, i64* %ln3wc | |
%ln3wd = load i64** %Base_Var | |
%ln3we = load i64** %Sp_Var | |
%ln3wf = load i64** %Hp_Var | |
%ln3wg = load i64* %R1_Var | |
%ln3wh = load i64* %R2_Var | |
%ln3wi = load i64* %R3_Var | |
%ln3wj = load i64* %R4_Var | |
%ln3wk = load i64* %R5_Var | |
%ln3wl = load i64* %R6_Var | |
%ln3wm = load i64* %SpLim_Var | |
%ln3wn = load float* %F1_Var | |
%ln3wo = load float* %F2_Var | |
%ln3wp = load float* %F3_Var | |
%ln3wq = load float* %F4_Var | |
%ln3wr = load double* %D1_Var | |
%ln3ws = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @stg_gc_ut( i64* %ln3wd, i64* %ln3we, i64* %ln3wf, i64 %ln3wg, i64 %ln3wh, i64 %ln3wi, i64 %ln3wj, i64 %ln3wk, i64 %ln3wl, i64 %ln3wm, float %ln3wn, float %ln3wo, float %ln3wp, float %ln3wq, double %ln3wr, double %ln3ws ) nounwind | |
ret void | |
c3vm: | |
%ln3wt = load i64** %Base_Var | |
%ln3wu = getelementptr inbounds i64* %ln3wt, i32 24 | |
store i64 48, i64* %ln3wu | |
br label %c3wa | |
} | |
declare cc 10 void @stg_gc_ut(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%s29l_ret_struct = type <{i64, i64, i64}> | |
@s29l_info_itable = internal constant %s29l_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_zdwa_srt_struct* @Main_zdwa_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29l_info to i64)),i64 32), i64 65, i64 30064771104}>, section "X98A__STRIP,__me61", align 8 | |
define internal cc 10 void @s29l_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me62" | |
{ | |
c3wY: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ls29a = alloca i64, i32 1 | |
%ln3wZ = load i64** %Sp_Var | |
%ln3x0 = getelementptr inbounds i64* %ln3wZ, i32 1 | |
%ln3x1 = bitcast i64* %ln3x0 to i64* | |
%ln3x2 = load i64* %ln3x1 | |
%ln3x3 = sub i64 %ln3x2, 1 | |
store i64 %ln3x3, i64* %ls29a | |
%ln3x4 = load i64* %R1_Var | |
%ln3x5 = load i64** %Sp_Var | |
%ln3x6 = getelementptr inbounds i64* %ln3x5, i32 1 | |
store i64 %ln3x4, i64* %ln3x6 | |
%ln3x7 = load i64* %ls29a | |
store i64 %ln3x7, i64* %R2_Var | |
%ln3x8 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29k_info to i64 | |
%ln3x9 = load i64** %Sp_Var | |
%ln3xa = getelementptr inbounds i64* %ln3x9, i32 0 | |
store i64 %ln3x8, i64* %ln3xa | |
%ln3xb = load i64** %Base_Var | |
%ln3xc = load i64** %Sp_Var | |
%ln3xd = load i64** %Hp_Var | |
%ln3xe = load i64* %R1_Var | |
%ln3xf = load i64* %R2_Var | |
%ln3xg = load i64* %R3_Var | |
%ln3xh = load i64* %R4_Var | |
%ln3xi = load i64* %R5_Var | |
%ln3xj = load i64* %R6_Var | |
%ln3xk = load i64* %SpLim_Var | |
%ln3xl = load float* %F1_Var | |
%ln3xm = load float* %F2_Var | |
%ln3xn = load float* %F3_Var | |
%ln3xo = load float* %F4_Var | |
%ln3xp = load double* %D1_Var | |
%ln3xq = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_zdwa_info( i64* %ln3xb, i64* %ln3xc, i64* %ln3xd, i64 %ln3xe, i64 %ln3xf, i64 %ln3xg, i64 %ln3xh, i64 %ln3xi, i64 %ln3xj, i64 %ln3xk, float %ln3xl, float %ln3xm, float %ln3xn, float %ln3xo, double %ln3xp, double %ln3xq ) nounwind | |
ret void | |
} | |
%Main_zdwa_info_struct = type <{i64, i64, i64, i64}> | |
@Main_zdwa_info_itable = constant %Main_zdwa_info_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_zdwa_srt_struct* @Main_zdwa_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_zdwa_info to i64)),i64 0), i64 8589934596, i64 0, i64 545460846607}>, section "X98A__STRIP,__me63", align 8 | |
define cc 10 void @Main_zdwa_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me64" | |
{ | |
c3yP: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ls28e = alloca i64, i32 1 | |
%ln3yQ = load i64** %Sp_Var | |
%ln3yR = getelementptr inbounds i64* %ln3yQ, i32 -2 | |
%ln3yS = ptrtoint i64* %ln3yR to i64 | |
%ln3yT = load i64* %SpLim_Var | |
%ln3yU = icmp ult i64 %ln3yS, %ln3yT | |
br i1 %ln3yU, label %c3yW, label %n3yX | |
n3yX: | |
%ln3yY = load i64* %R2_Var | |
store i64 %ln3yY, i64* %ls28e | |
%ln3yZ = load i64* %ls28e | |
%ln3z0 = icmp ne i64 %ln3yZ, 0 | |
br i1 %ln3z0, label %c3z2, label %n3z3 | |
n3z3: | |
%ln3z4 = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZMZN_closure to i64 | |
%ln3z5 = add i64 %ln3z4, 1 | |
store i64 %ln3z5, i64* %R1_Var | |
%ln3z6 = load i64** %Sp_Var | |
%ln3z7 = getelementptr inbounds i64* %ln3z6, i32 0 | |
%ln3z8 = bitcast i64* %ln3z7 to i64* | |
%ln3z9 = load i64* %ln3z8 | |
%ln3za = inttoptr i64 %ln3z9 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3zb = load i64** %Base_Var | |
%ln3zc = load i64** %Sp_Var | |
%ln3zd = load i64** %Hp_Var | |
%ln3ze = load i64* %R1_Var | |
%ln3zf = load i64* %R2_Var | |
%ln3zg = load i64* %R3_Var | |
%ln3zh = load i64* %R4_Var | |
%ln3zi = load i64* %R5_Var | |
%ln3zj = load i64* %R6_Var | |
%ln3zk = load i64* %SpLim_Var | |
%ln3zl = load float* %F1_Var | |
%ln3zm = load float* %F2_Var | |
%ln3zn = load float* %F3_Var | |
%ln3zo = load float* %F4_Var | |
%ln3zp = load double* %D1_Var | |
%ln3zq = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3za( i64* %ln3zb, i64* %ln3zc, i64* %ln3zd, i64 %ln3ze, i64 %ln3zf, i64 %ln3zg, i64 %ln3zh, i64 %ln3zi, i64 %ln3zj, i64 %ln3zk, float %ln3zl, float %ln3zm, float %ln3zn, float %ln3zo, double %ln3zp, double %ln3zq ) nounwind | |
ret void | |
c3yW: | |
%ln3zr = ptrtoint %Main_zdwa_closure_struct* @Main_zdwa_closure to i64 | |
store i64 %ln3zr, i64* %R1_Var | |
%ln3zs = load i64** %Base_Var | |
%ln3zt = getelementptr inbounds i64* %ln3zs, i32 -1 | |
%ln3zu = bitcast i64* %ln3zt to i64* | |
%ln3zv = load i64* %ln3zu | |
%ln3zw = inttoptr i64 %ln3zv to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3zx = load i64** %Base_Var | |
%ln3zy = load i64** %Sp_Var | |
%ln3zz = load i64** %Hp_Var | |
%ln3zA = load i64* %R1_Var | |
%ln3zB = load i64* %R2_Var | |
%ln3zC = load i64* %R3_Var | |
%ln3zD = load i64* %R4_Var | |
%ln3zE = load i64* %R5_Var | |
%ln3zF = load i64* %R6_Var | |
%ln3zG = load i64* %SpLim_Var | |
%ln3zH = load float* %F1_Var | |
%ln3zI = load float* %F2_Var | |
%ln3zJ = load float* %F3_Var | |
%ln3zK = load float* %F4_Var | |
%ln3zL = load double* %D1_Var | |
%ln3zM = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3zw( i64* %ln3zx, i64* %ln3zy, i64* %ln3zz, i64 %ln3zA, i64 %ln3zB, i64 %ln3zC, i64 %ln3zD, i64 %ln3zE, i64 %ln3zF, i64 %ln3zG, float %ln3zH, float %ln3zI, float %ln3zJ, float %ln3zK, double %ln3zL, double %ln3zM ) nounwind | |
ret void | |
c3z2: | |
%ln3zN = load i64* %ls28e | |
%ln3zO = load i64** %Sp_Var | |
%ln3zP = getelementptr inbounds i64* %ln3zO, i32 -1 | |
store i64 %ln3zN, i64* %ln3zP | |
%ln3zQ = ptrtoint [0 x i64]* @base_GHCziIOziHandleziText_hGetLine3_closure to i64 | |
store i64 %ln3zQ, i64* %R2_Var | |
%ln3zR = ptrtoint [0 x i64]* @base_GHCziIOziHandleziFD_stdin_closure to i64 | |
store i64 %ln3zR, i64* %R3_Var | |
%ln3zS = ptrtoint [0 x i64]* @base_GHCziIOziHandleziText_hGetLine2_closure to i64 | |
%ln3zT = add i64 %ln3zS, 2 | |
store i64 %ln3zT, i64* %R4_Var | |
%ln3zU = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29l_info to i64 | |
%ln3zV = load i64** %Sp_Var | |
%ln3zW = getelementptr inbounds i64* %ln3zV, i32 -2 | |
store i64 %ln3zU, i64* %ln3zW | |
%ln3zX = load i64** %Sp_Var | |
%ln3zY = getelementptr inbounds i64* %ln3zX, i32 -2 | |
%ln3zZ = ptrtoint i64* %ln3zY to i64 | |
%ln3A0 = inttoptr i64 %ln3zZ to i64* | |
store i64* %ln3A0, i64** %Sp_Var | |
%ln3A1 = load i64** %Base_Var | |
%ln3A2 = load i64** %Sp_Var | |
%ln3A3 = load i64** %Hp_Var | |
%ln3A4 = load i64* %R1_Var | |
%ln3A5 = load i64* %R2_Var | |
%ln3A6 = load i64* %R3_Var | |
%ln3A7 = load i64* %R4_Var | |
%ln3A8 = load i64* %R5_Var | |
%ln3A9 = load i64* %R6_Var | |
%ln3Aa = load i64* %SpLim_Var | |
%ln3Ab = load float* %F1_Var | |
%ln3Ac = load float* %F2_Var | |
%ln3Ad = load float* %F3_Var | |
%ln3Ae = load float* %F4_Var | |
%ln3Af = load double* %D1_Var | |
%ln3Ag = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_GHCziIOziHandleziInternals_wantReadableHandlezu1_info( i64* %ln3A1, i64* %ln3A2, i64* %ln3A3, i64 %ln3A4, i64 %ln3A5, i64 %ln3A6, i64 %ln3A7, i64 %ln3A8, i64 %ln3A9, i64 %ln3Aa, float %ln3Ab, float %ln3Ac, float %ln3Ad, float %ln3Ae, double %ln3Af, double %ln3Ag ) nounwind | |
ret void | |
} | |
declare cc 10 void @base_GHCziIOziHandleziInternals_wantReadableHandlezu1_info(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%s29b_ret_struct = type <{i64, i64, i64}> | |
@s29b_info_itable = internal constant %s29b_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_readIntList1_srt_struct* @Main_readIntList1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29b_info to i64)),i64 0), i64 0, i64 4294967328}>, section "X98A__STRIP,__me65", align 8 | |
define internal cc 10 void @s29b_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me66" | |
{ | |
c3AL: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3AM = load i64* %R1_Var | |
%ln3AN = add i64 %ln3AM, 7 | |
%ln3AO = inttoptr i64 %ln3AN to i64* | |
%ln3AP = load i64* %ln3AO | |
store i64 %ln3AP, i64* %R2_Var | |
%ln3AQ = load i64** %Sp_Var | |
%ln3AR = getelementptr inbounds i64* %ln3AQ, i32 1 | |
%ln3AS = ptrtoint i64* %ln3AR to i64 | |
%ln3AT = inttoptr i64 %ln3AS to i64* | |
store i64* %ln3AT, i64** %Sp_Var | |
%ln3AU = load i64** %Base_Var | |
%ln3AV = load i64** %Sp_Var | |
%ln3AW = load i64** %Hp_Var | |
%ln3AX = load i64* %R1_Var | |
%ln3AY = load i64* %R2_Var | |
%ln3AZ = load i64* %R3_Var | |
%ln3B0 = load i64* %R4_Var | |
%ln3B1 = load i64* %R5_Var | |
%ln3B2 = load i64* %R6_Var | |
%ln3B3 = load i64* %SpLim_Var | |
%ln3B4 = load float* %F1_Var | |
%ln3B5 = load float* %F2_Var | |
%ln3B6 = load float* %F3_Var | |
%ln3B7 = load float* %F4_Var | |
%ln3B8 = load double* %D1_Var | |
%ln3B9 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_zdwa_info( i64* %ln3AU, i64* %ln3AV, i64* %ln3AW, i64 %ln3AX, i64 %ln3AY, i64 %ln3AZ, i64 %ln3B0, i64 %ln3B1, i64 %ln3B2, i64 %ln3B3, float %ln3B4, float %ln3B5, float %ln3B6, float %ln3B7, double %ln3B8, double %ln3B9 ) nounwind | |
ret void | |
} | |
%Main_readIntList1_info_struct = type <{i64, i64, i64, i64}> | |
@Main_readIntList1_info_itable = constant %Main_readIntList1_info_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_readIntList1_srt_struct* @Main_readIntList1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_readIntList1_info to i64)),i64 0), i64 8589934597, i64 0, i64 4294967311}>, section "X98A__STRIP,__me67", align 8 | |
define cc 10 void @Main_readIntList1_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me68" | |
{ | |
c3Cp: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3Cq = load i64** %Sp_Var | |
%ln3Cr = getelementptr inbounds i64* %ln3Cq, i32 -1 | |
%ln3Cs = ptrtoint i64* %ln3Cr to i64 | |
%ln3Ct = load i64* %SpLim_Var | |
%ln3Cu = icmp ult i64 %ln3Cs, %ln3Ct | |
br i1 %ln3Cu, label %c3Cw, label %n3Cx | |
n3Cx: | |
%ln3Cy = load i64* %R2_Var | |
store i64 %ln3Cy, i64* %R1_Var | |
%ln3Cz = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s29b_info to i64 | |
%ln3CA = load i64** %Sp_Var | |
%ln3CB = getelementptr inbounds i64* %ln3CA, i32 -1 | |
store i64 %ln3Cz, i64* %ln3CB | |
%ln3CC = load i64** %Sp_Var | |
%ln3CD = getelementptr inbounds i64* %ln3CC, i32 -1 | |
%ln3CE = ptrtoint i64* %ln3CD to i64 | |
%ln3CF = inttoptr i64 %ln3CE to i64* | |
store i64* %ln3CF, i64** %Sp_Var | |
%ln3CG = load i64* %R1_Var | |
%ln3CH = and i64 %ln3CG, 7 | |
%ln3CI = icmp ne i64 %ln3CH, 0 | |
br i1 %ln3CI, label %c3CL, label %n3CM | |
n3CM: | |
%ln3CN = load i64* %R1_Var | |
%ln3CO = inttoptr i64 %ln3CN to i64* | |
%ln3CP = load i64* %ln3CO | |
%ln3CQ = inttoptr i64 %ln3CP to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3CR = load i64** %Base_Var | |
%ln3CS = load i64** %Sp_Var | |
%ln3CT = load i64** %Hp_Var | |
%ln3CU = load i64* %R1_Var | |
%ln3CV = load i64* %R2_Var | |
%ln3CW = load i64* %R3_Var | |
%ln3CX = load i64* %R4_Var | |
%ln3CY = load i64* %R5_Var | |
%ln3CZ = load i64* %R6_Var | |
%ln3D0 = load i64* %SpLim_Var | |
%ln3D1 = load float* %F1_Var | |
%ln3D2 = load float* %F2_Var | |
%ln3D3 = load float* %F3_Var | |
%ln3D4 = load float* %F4_Var | |
%ln3D5 = load double* %D1_Var | |
%ln3D6 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3CQ( i64* %ln3CR, i64* %ln3CS, i64* %ln3CT, i64 %ln3CU, i64 %ln3CV, i64 %ln3CW, i64 %ln3CX, i64 %ln3CY, i64 %ln3CZ, i64 %ln3D0, float %ln3D1, float %ln3D2, float %ln3D3, float %ln3D4, double %ln3D5, double %ln3D6 ) nounwind | |
ret void | |
c3Cw: | |
%ln3D7 = ptrtoint %Main_readIntList1_closure_struct* @Main_readIntList1_closure to i64 | |
store i64 %ln3D7, i64* %R1_Var | |
%ln3D8 = load i64** %Base_Var | |
%ln3D9 = getelementptr inbounds i64* %ln3D8, i32 -1 | |
%ln3Da = bitcast i64* %ln3D9 to i64* | |
%ln3Db = load i64* %ln3Da | |
%ln3Dc = inttoptr i64 %ln3Db to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3Dd = load i64** %Base_Var | |
%ln3De = load i64** %Sp_Var | |
%ln3Df = load i64** %Hp_Var | |
%ln3Dg = load i64* %R1_Var | |
%ln3Dh = load i64* %R2_Var | |
%ln3Di = load i64* %R3_Var | |
%ln3Dj = load i64* %R4_Var | |
%ln3Dk = load i64* %R5_Var | |
%ln3Dl = load i64* %R6_Var | |
%ln3Dm = load i64* %SpLim_Var | |
%ln3Dn = load float* %F1_Var | |
%ln3Do = load float* %F2_Var | |
%ln3Dp = load float* %F3_Var | |
%ln3Dq = load float* %F4_Var | |
%ln3Dr = load double* %D1_Var | |
%ln3Ds = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3Dc( i64* %ln3Dd, i64* %ln3De, i64* %ln3Df, i64 %ln3Dg, i64 %ln3Dh, i64 %ln3Di, i64 %ln3Dj, i64 %ln3Dk, i64 %ln3Dl, i64 %ln3Dm, float %ln3Dn, float %ln3Do, float %ln3Dp, float %ln3Dq, double %ln3Dr, double %ln3Ds ) nounwind | |
ret void | |
c3CL: | |
%ln3Dt = load i64** %Base_Var | |
%ln3Du = load i64** %Sp_Var | |
%ln3Dv = load i64** %Hp_Var | |
%ln3Dw = load i64* %R1_Var | |
%ln3Dx = load i64* %R2_Var | |
%ln3Dy = load i64* %R3_Var | |
%ln3Dz = load i64* %R4_Var | |
%ln3DA = load i64* %R5_Var | |
%ln3DB = load i64* %R6_Var | |
%ln3DC = load i64* %SpLim_Var | |
%ln3DD = load float* %F1_Var | |
%ln3DE = load float* %F2_Var | |
%ln3DF = load float* %F3_Var | |
%ln3DG = load float* %F4_Var | |
%ln3DH = load double* %D1_Var | |
%ln3DI = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @s29b_info( i64* %ln3Dt, i64* %ln3Du, i64* %ln3Dv, i64 %ln3Dw, i64 %ln3Dx, i64 %ln3Dy, i64 %ln3Dz, i64 %ln3DA, i64 %ln3DB, i64 %ln3DC, float %ln3DD, float %ln3DE, float %ln3DF, float %ln3DG, double %ln3DH, double %ln3DI ) nounwind | |
ret void | |
} | |
%Main_readIntList_info_struct = type <{i64, i64, i64, i64}> | |
@Main_readIntList_info_itable = constant %Main_readIntList_info_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_readIntList_srt_struct* @Main_readIntList_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_readIntList_info to i64)),i64 0), i64 8589934597, i64 0, i64 4294967311}>, section "X98A__STRIP,__me69", align 8 | |
define cc 10 void @Main_readIntList_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me70" | |
{ | |
c3E2: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3E3 = load i64** %Base_Var | |
%ln3E4 = load i64** %Sp_Var | |
%ln3E5 = load i64** %Hp_Var | |
%ln3E6 = load i64* %R1_Var | |
%ln3E7 = load i64* %R2_Var | |
%ln3E8 = load i64* %R3_Var | |
%ln3E9 = load i64* %R4_Var | |
%ln3Ea = load i64* %R5_Var | |
%ln3Eb = load i64* %R6_Var | |
%ln3Ec = load i64* %SpLim_Var | |
%ln3Ed = load float* %F1_Var | |
%ln3Ee = load float* %F2_Var | |
%ln3Ef = load float* %F3_Var | |
%ln3Eg = load float* %F4_Var | |
%ln3Eh = load double* %D1_Var | |
%ln3Ei = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_readIntList1_info( i64* %ln3E3, i64* %ln3E4, i64* %ln3E5, i64 %ln3E6, i64 %ln3E7, i64 %ln3E8, i64 %ln3E9, i64 %ln3Ea, i64 %ln3Eb, i64 %ln3Ec, float %ln3Ed, float %ln3Ee, float %ln3Ef, float %ln3Eg, double %ln3Eh, double %ln3Ei ) nounwind | |
ret void | |
} | |
%Main_main2_info_struct = type <{i64, i64}> | |
@Main_main2_info_itable = constant %Main_main2_info_struct<{i64 0, i64 22}>, section "X98A__STRIP,__me71", align 8 | |
define cc 10 void @Main_main2_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me72" | |
{ | |
c3Ga: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc3ET = alloca i64, i32 1 | |
%ln3Gb = load i64** %Sp_Var | |
%ln3Gc = getelementptr inbounds i64* %ln3Gb, i32 -2 | |
%ln3Gd = ptrtoint i64* %ln3Gc to i64 | |
%ln3Ge = load i64* %SpLim_Var | |
%ln3Gf = icmp ult i64 %ln3Gd, %ln3Ge | |
br i1 %ln3Gf, label %c3Gh, label %n3Gi | |
n3Gi: | |
%ln3Gj = load i64** %Hp_Var | |
%ln3Gk = getelementptr inbounds i64* %ln3Gj, i32 2 | |
%ln3Gl = ptrtoint i64* %ln3Gk to i64 | |
%ln3Gm = inttoptr i64 %ln3Gl to i64* | |
store i64* %ln3Gm, i64** %Hp_Var | |
%ln3Gn = load i64** %Hp_Var | |
%ln3Go = ptrtoint i64* %ln3Gn to i64 | |
%ln3Gp = load i64** %Base_Var | |
%ln3Gq = getelementptr inbounds i64* %ln3Gp, i32 18 | |
%ln3Gr = bitcast i64* %ln3Gq to i64* | |
%ln3Gs = load i64* %ln3Gr | |
%ln3Gt = icmp ugt i64 %ln3Go, %ln3Gs | |
br i1 %ln3Gt, label %c3Gv, label %n3Gw | |
n3Gw: | |
%ln3Gx = ptrtoint [0 x i64]* @stg_CAF_BLACKHOLE_info to i64 | |
%ln3Gy = load i64** %Hp_Var | |
%ln3Gz = getelementptr inbounds i64* %ln3Gy, i32 -1 | |
store i64 %ln3Gx, i64* %ln3Gz | |
%ln3GA = load i64** %Base_Var | |
%ln3GB = getelementptr inbounds i64* %ln3GA, i32 20 | |
%ln3GC = bitcast i64* %ln3GB to i64* | |
%ln3GD = load i64* %ln3GC | |
%ln3GE = load i64** %Hp_Var | |
%ln3GF = getelementptr inbounds i64* %ln3GE, i32 0 | |
store i64 %ln3GD, i64* %ln3GF | |
%ln3GG = load i64** %Base_Var | |
%ln3GH = ptrtoint i64* %ln3GG to i64 | |
%ln3GI = inttoptr i64 %ln3GH to i8* | |
%ln3GJ = load i64* %R1_Var | |
%ln3GK = inttoptr i64 %ln3GJ to i8* | |
%ln3GL = load i64** %Hp_Var | |
%ln3GM = getelementptr inbounds i64* %ln3GL, i32 -1 | |
%ln3GN = ptrtoint i64* %ln3GM to i64 | |
%ln3GO = inttoptr i64 %ln3GN to i8* | |
store i64 undef, i64* %R3_Var | |
store i64 undef, i64* %R4_Var | |
store i64 undef, i64* %R5_Var | |
store i64 undef, i64* %R6_Var | |
store float undef, float* %F1_Var | |
store float undef, float* %F2_Var | |
store float undef, float* %F3_Var | |
store float undef, float* %F4_Var | |
store double undef, double* %D1_Var | |
store double undef, double* %D2_Var | |
%ln3GP = call ccc i64 (i8*,i8*,i8*)* @newCAF( i8* %ln3GI, i8* %ln3GK, i8* %ln3GO ) nounwind | |
store i64 %ln3GP, i64* %lc3ET | |
%ln3GQ = load i64* %lc3ET | |
%ln3GR = icmp eq i64 %ln3GQ, 0 | |
br i1 %ln3GR, label %c3GS, label %n3GT | |
n3GT: | |
br label %c3GU | |
c3Gh: | |
%ln3GV = load i64** %Base_Var | |
%ln3GW = getelementptr inbounds i64* %ln3GV, i32 -2 | |
%ln3GX = bitcast i64* %ln3GW to i64* | |
%ln3GY = load i64* %ln3GX | |
%ln3GZ = inttoptr i64 %ln3GY to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3H0 = load i64** %Base_Var | |
%ln3H1 = load i64** %Sp_Var | |
%ln3H2 = load i64** %Hp_Var | |
%ln3H3 = load i64* %R1_Var | |
%ln3H4 = load i64* %R2_Var | |
%ln3H5 = load i64* %R3_Var | |
%ln3H6 = load i64* %R4_Var | |
%ln3H7 = load i64* %R5_Var | |
%ln3H8 = load i64* %R6_Var | |
%ln3H9 = load i64* %SpLim_Var | |
%ln3Ha = load float* %F1_Var | |
%ln3Hb = load float* %F2_Var | |
%ln3Hc = load float* %F3_Var | |
%ln3Hd = load float* %F4_Var | |
%ln3He = load double* %D1_Var | |
%ln3Hf = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3GZ( i64* %ln3H0, i64* %ln3H1, i64* %ln3H2, i64 %ln3H3, i64 %ln3H4, i64 %ln3H5, i64 %ln3H6, i64 %ln3H7, i64 %ln3H8, i64 %ln3H9, float %ln3Ha, float %ln3Hb, float %ln3Hc, float %ln3Hd, double %ln3He, double %ln3Hf ) nounwind | |
ret void | |
c3Gv: | |
%ln3Hg = load i64** %Base_Var | |
%ln3Hh = getelementptr inbounds i64* %ln3Hg, i32 24 | |
store i64 16, i64* %ln3Hh | |
br label %c3Gh | |
c3GS: | |
%ln3Hi = load i64* %R1_Var | |
%ln3Hj = inttoptr i64 %ln3Hi to i64* | |
%ln3Hk = load i64* %ln3Hj | |
%ln3Hl = inttoptr i64 %ln3Hk to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3Hm = load i64** %Base_Var | |
%ln3Hn = load i64** %Sp_Var | |
%ln3Ho = load i64** %Hp_Var | |
%ln3Hp = load i64* %R1_Var | |
%ln3Hq = load i64* %R2_Var | |
%ln3Hr = load i64* %R3_Var | |
%ln3Hs = load i64* %R4_Var | |
%ln3Ht = load i64* %R5_Var | |
%ln3Hu = load i64* %R6_Var | |
%ln3Hv = load i64* %SpLim_Var | |
%ln3Hw = load float* %F1_Var | |
%ln3Hx = load float* %F2_Var | |
%ln3Hy = load float* %F3_Var | |
%ln3Hz = load float* %F4_Var | |
%ln3HA = load double* %D1_Var | |
%ln3HB = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3Hl( i64* %ln3Hm, i64* %ln3Hn, i64* %ln3Ho, i64 %ln3Hp, i64 %ln3Hq, i64 %ln3Hr, i64 %ln3Hs, i64 %ln3Ht, i64 %ln3Hu, i64 %ln3Hv, float %ln3Hw, float %ln3Hx, float %ln3Hy, float %ln3Hz, double %ln3HA, double %ln3HB ) nounwind | |
ret void | |
c3GU: | |
%ln3HC = ptrtoint [0 x i64]* @stg_bh_upd_frame_info to i64 | |
%ln3HD = load i64** %Sp_Var | |
%ln3HE = getelementptr inbounds i64* %ln3HD, i32 -2 | |
store i64 %ln3HC, i64* %ln3HE | |
%ln3HF = load i64** %Hp_Var | |
%ln3HG = getelementptr inbounds i64* %ln3HF, i32 -1 | |
%ln3HH = ptrtoint i64* %ln3HG to i64 | |
%ln3HI = load i64** %Sp_Var | |
%ln3HJ = getelementptr inbounds i64* %ln3HI, i32 -1 | |
store i64 %ln3HH, i64* %ln3HJ | |
%ln3HK = ptrtoint %c2a7_str_struct* @c2a7_str to i64 | |
store i64 %ln3HK, i64* %R2_Var | |
%ln3HL = load i64** %Sp_Var | |
%ln3HM = getelementptr inbounds i64* %ln3HL, i32 -2 | |
%ln3HN = ptrtoint i64* %ln3HM to i64 | |
%ln3HO = inttoptr i64 %ln3HN to i64* | |
store i64* %ln3HO, i64** %Sp_Var | |
%ln3HP = load i64** %Base_Var | |
%ln3HQ = load i64** %Sp_Var | |
%ln3HR = load i64** %Hp_Var | |
%ln3HS = load i64* %R1_Var | |
%ln3HT = load i64* %R2_Var | |
%ln3HU = load i64* %R3_Var | |
%ln3HV = load i64* %R4_Var | |
%ln3HW = load i64* %R5_Var | |
%ln3HX = load i64* %R6_Var | |
%ln3HY = load i64* %SpLim_Var | |
%ln3HZ = load float* %F1_Var | |
%ln3I0 = load float* %F2_Var | |
%ln3I1 = load float* %F3_Var | |
%ln3I2 = load float* %F4_Var | |
%ln3I3 = load double* %D1_Var | |
%ln3I4 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @ghczmprim_GHCziCString_unpackCStringzh_info( i64* %ln3HP, i64* %ln3HQ, i64* %ln3HR, i64 %ln3HS, i64 %ln3HT, i64 %ln3HU, i64 %ln3HV, i64 %ln3HW, i64 %ln3HX, i64 %ln3HY, float %ln3HZ, float %ln3I0, float %ln3I1, float %ln3I2, double %ln3I3, double %ln3I4 ) nounwind | |
ret void | |
} | |
@stg_CAF_BLACKHOLE_info = external global [0 x i64] | |
declare ccc i64 @newCAF(i8*, i8*, i8*) align 8 | |
@stg_bh_upd_frame_info = external global [0 x i64] | |
declare cc 10 void @ghczmprim_GHCziCString_unpackCStringzh_info(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%Main_main3_info_struct = type <{i64, i64}> | |
@Main_main3_info_itable = constant %Main_main3_info_struct<{i64 0, i64 22}>, section "X98A__STRIP,__me73", align 8 | |
define cc 10 void @Main_main3_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me74" | |
{ | |
c3JW: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%lc3IF = alloca i64, i32 1 | |
%ln3JX = load i64** %Sp_Var | |
%ln3JY = getelementptr inbounds i64* %ln3JX, i32 -2 | |
%ln3JZ = ptrtoint i64* %ln3JY to i64 | |
%ln3K0 = load i64* %SpLim_Var | |
%ln3K1 = icmp ult i64 %ln3JZ, %ln3K0 | |
br i1 %ln3K1, label %c3K3, label %n3K4 | |
n3K4: | |
%ln3K5 = load i64** %Hp_Var | |
%ln3K6 = getelementptr inbounds i64* %ln3K5, i32 2 | |
%ln3K7 = ptrtoint i64* %ln3K6 to i64 | |
%ln3K8 = inttoptr i64 %ln3K7 to i64* | |
store i64* %ln3K8, i64** %Hp_Var | |
%ln3K9 = load i64** %Hp_Var | |
%ln3Ka = ptrtoint i64* %ln3K9 to i64 | |
%ln3Kb = load i64** %Base_Var | |
%ln3Kc = getelementptr inbounds i64* %ln3Kb, i32 18 | |
%ln3Kd = bitcast i64* %ln3Kc to i64* | |
%ln3Ke = load i64* %ln3Kd | |
%ln3Kf = icmp ugt i64 %ln3Ka, %ln3Ke | |
br i1 %ln3Kf, label %c3Kh, label %n3Ki | |
n3Ki: | |
%ln3Kj = ptrtoint [0 x i64]* @stg_CAF_BLACKHOLE_info to i64 | |
%ln3Kk = load i64** %Hp_Var | |
%ln3Kl = getelementptr inbounds i64* %ln3Kk, i32 -1 | |
store i64 %ln3Kj, i64* %ln3Kl | |
%ln3Km = load i64** %Base_Var | |
%ln3Kn = getelementptr inbounds i64* %ln3Km, i32 20 | |
%ln3Ko = bitcast i64* %ln3Kn to i64* | |
%ln3Kp = load i64* %ln3Ko | |
%ln3Kq = load i64** %Hp_Var | |
%ln3Kr = getelementptr inbounds i64* %ln3Kq, i32 0 | |
store i64 %ln3Kp, i64* %ln3Kr | |
%ln3Ks = load i64** %Base_Var | |
%ln3Kt = ptrtoint i64* %ln3Ks to i64 | |
%ln3Ku = inttoptr i64 %ln3Kt to i8* | |
%ln3Kv = load i64* %R1_Var | |
%ln3Kw = inttoptr i64 %ln3Kv to i8* | |
%ln3Kx = load i64** %Hp_Var | |
%ln3Ky = getelementptr inbounds i64* %ln3Kx, i32 -1 | |
%ln3Kz = ptrtoint i64* %ln3Ky to i64 | |
%ln3KA = inttoptr i64 %ln3Kz to i8* | |
store i64 undef, i64* %R3_Var | |
store i64 undef, i64* %R4_Var | |
store i64 undef, i64* %R5_Var | |
store i64 undef, i64* %R6_Var | |
store float undef, float* %F1_Var | |
store float undef, float* %F2_Var | |
store float undef, float* %F3_Var | |
store float undef, float* %F4_Var | |
store double undef, double* %D1_Var | |
store double undef, double* %D2_Var | |
%ln3KB = call ccc i64 (i8*,i8*,i8*)* @newCAF( i8* %ln3Ku, i8* %ln3Kw, i8* %ln3KA ) nounwind | |
store i64 %ln3KB, i64* %lc3IF | |
%ln3KC = load i64* %lc3IF | |
%ln3KD = icmp eq i64 %ln3KC, 0 | |
br i1 %ln3KD, label %c3KE, label %n3KF | |
n3KF: | |
br label %c3KG | |
c3K3: | |
%ln3KH = load i64** %Base_Var | |
%ln3KI = getelementptr inbounds i64* %ln3KH, i32 -2 | |
%ln3KJ = bitcast i64* %ln3KI to i64* | |
%ln3KK = load i64* %ln3KJ | |
%ln3KL = inttoptr i64 %ln3KK to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3KM = load i64** %Base_Var | |
%ln3KN = load i64** %Sp_Var | |
%ln3KO = load i64** %Hp_Var | |
%ln3KP = load i64* %R1_Var | |
%ln3KQ = load i64* %R2_Var | |
%ln3KR = load i64* %R3_Var | |
%ln3KS = load i64* %R4_Var | |
%ln3KT = load i64* %R5_Var | |
%ln3KU = load i64* %R6_Var | |
%ln3KV = load i64* %SpLim_Var | |
%ln3KW = load float* %F1_Var | |
%ln3KX = load float* %F2_Var | |
%ln3KY = load float* %F3_Var | |
%ln3KZ = load float* %F4_Var | |
%ln3L0 = load double* %D1_Var | |
%ln3L1 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3KL( i64* %ln3KM, i64* %ln3KN, i64* %ln3KO, i64 %ln3KP, i64 %ln3KQ, i64 %ln3KR, i64 %ln3KS, i64 %ln3KT, i64 %ln3KU, i64 %ln3KV, float %ln3KW, float %ln3KX, float %ln3KY, float %ln3KZ, double %ln3L0, double %ln3L1 ) nounwind | |
ret void | |
c3Kh: | |
%ln3L2 = load i64** %Base_Var | |
%ln3L3 = getelementptr inbounds i64* %ln3L2, i32 24 | |
store i64 16, i64* %ln3L3 | |
br label %c3K3 | |
c3KE: | |
%ln3L4 = load i64* %R1_Var | |
%ln3L5 = inttoptr i64 %ln3L4 to i64* | |
%ln3L6 = load i64* %ln3L5 | |
%ln3L7 = inttoptr i64 %ln3L6 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3L8 = load i64** %Base_Var | |
%ln3L9 = load i64** %Sp_Var | |
%ln3La = load i64** %Hp_Var | |
%ln3Lb = load i64* %R1_Var | |
%ln3Lc = load i64* %R2_Var | |
%ln3Ld = load i64* %R3_Var | |
%ln3Le = load i64* %R4_Var | |
%ln3Lf = load i64* %R5_Var | |
%ln3Lg = load i64* %R6_Var | |
%ln3Lh = load i64* %SpLim_Var | |
%ln3Li = load float* %F1_Var | |
%ln3Lj = load float* %F2_Var | |
%ln3Lk = load float* %F3_Var | |
%ln3Ll = load float* %F4_Var | |
%ln3Lm = load double* %D1_Var | |
%ln3Ln = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3L7( i64* %ln3L8, i64* %ln3L9, i64* %ln3La, i64 %ln3Lb, i64 %ln3Lc, i64 %ln3Ld, i64 %ln3Le, i64 %ln3Lf, i64 %ln3Lg, i64 %ln3Lh, float %ln3Li, float %ln3Lj, float %ln3Lk, float %ln3Ll, double %ln3Lm, double %ln3Ln ) nounwind | |
ret void | |
c3KG: | |
%ln3Lo = ptrtoint [0 x i64]* @stg_bh_upd_frame_info to i64 | |
%ln3Lp = load i64** %Sp_Var | |
%ln3Lq = getelementptr inbounds i64* %ln3Lp, i32 -2 | |
store i64 %ln3Lo, i64* %ln3Lq | |
%ln3Lr = load i64** %Hp_Var | |
%ln3Ls = getelementptr inbounds i64* %ln3Lr, i32 -1 | |
%ln3Lt = ptrtoint i64* %ln3Ls to i64 | |
%ln3Lu = load i64** %Sp_Var | |
%ln3Lv = getelementptr inbounds i64* %ln3Lu, i32 -1 | |
store i64 %ln3Lt, i64* %ln3Lv | |
%ln3Lw = ptrtoint %c2a0_str_struct* @c2a0_str to i64 | |
store i64 %ln3Lw, i64* %R2_Var | |
%ln3Lx = load i64** %Sp_Var | |
%ln3Ly = getelementptr inbounds i64* %ln3Lx, i32 -2 | |
%ln3Lz = ptrtoint i64* %ln3Ly to i64 | |
%ln3LA = inttoptr i64 %ln3Lz to i64* | |
store i64* %ln3LA, i64** %Sp_Var | |
%ln3LB = load i64** %Base_Var | |
%ln3LC = load i64** %Sp_Var | |
%ln3LD = load i64** %Hp_Var | |
%ln3LE = load i64* %R1_Var | |
%ln3LF = load i64* %R2_Var | |
%ln3LG = load i64* %R3_Var | |
%ln3LH = load i64* %R4_Var | |
%ln3LI = load i64* %R5_Var | |
%ln3LJ = load i64* %R6_Var | |
%ln3LK = load i64* %SpLim_Var | |
%ln3LL = load float* %F1_Var | |
%ln3LM = load float* %F2_Var | |
%ln3LN = load float* %F3_Var | |
%ln3LO = load float* %F4_Var | |
%ln3LP = load double* %D1_Var | |
%ln3LQ = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @ghczmprim_GHCziCString_unpackCStringzh_info( i64* %ln3LB, i64* %ln3LC, i64* %ln3LD, i64 %ln3LE, i64 %ln3LF, i64 %ln3LG, i64 %ln3LH, i64 %ln3LI, i64 %ln3LJ, i64 %ln3LK, float %ln3LL, float %ln3LM, float %ln3LN, float %ln3LO, double %ln3LP, double %ln3LQ ) nounwind | |
ret void | |
} | |
%s290_ret_struct = type <{i64, i64}> | |
@s290_info_itable = internal constant %s290_ret_struct<{i64 0, i64 32}>, section "X98A__STRIP,__me75", align 8 | |
define internal cc 10 void @s290_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me76" | |
{ | |
c3MH: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3MI = load i64* %R1_Var | |
store i64 %ln3MI, i64* %R2_Var | |
%ln3MJ = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZMZN_closure to i64 | |
%ln3MK = add i64 %ln3MJ, 1 | |
store i64 %ln3MK, i64* %R3_Var | |
%ln3ML = load i64** %Sp_Var | |
%ln3MM = getelementptr inbounds i64* %ln3ML, i32 1 | |
%ln3MN = ptrtoint i64* %ln3MM to i64 | |
%ln3MO = inttoptr i64 %ln3MN to i64* | |
store i64* %ln3MO, i64** %Sp_Var | |
%ln3MP = load i64** %Base_Var | |
%ln3MQ = load i64** %Sp_Var | |
%ln3MR = load i64** %Hp_Var | |
%ln3MS = load i64* %R1_Var | |
%ln3MT = load i64* %R2_Var | |
%ln3MU = load i64* %R3_Var | |
%ln3MV = load i64* %R4_Var | |
%ln3MW = load i64* %R5_Var | |
%ln3MX = load i64* %R6_Var | |
%ln3MY = load i64* %SpLim_Var | |
%ln3MZ = load float* %F1_Var | |
%ln3N0 = load float* %F2_Var | |
%ln3N1 = load float* %F3_Var | |
%ln3N2 = load float* %F4_Var | |
%ln3N3 = load double* %D1_Var | |
%ln3N4 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_GHCziShow_zdfShowIntzuzdcshowList_info( i64* %ln3MP, i64* %ln3MQ, i64* %ln3MR, i64 %ln3MS, i64 %ln3MT, i64 %ln3MU, i64 %ln3MV, i64 %ln3MW, i64 %ln3MX, i64 %ln3MY, float %ln3MZ, float %ln3N0, float %ln3N1, float %ln3N2, double %ln3N3, double %ln3N4 ) nounwind | |
ret void | |
} | |
declare cc 10 void @base_GHCziShow_zdfShowIntzuzdcshowList_info(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%s28U_ret_struct = type <{i64, i64}> | |
@s28U_info_itable = internal constant %s28U_ret_struct<{i64 0, i64 32}>, section "X98A__STRIP,__me77", align 8 | |
define internal cc 10 void @s28U_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me78" | |
{ | |
c3Ns: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3Nt = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_ZMZN_closure to i64 | |
%ln3Nu = add i64 %ln3Nt, 1 | |
store i64 %ln3Nu, i64* %R2_Var | |
%ln3Nv = load i64* %R1_Var | |
store i64 %ln3Nv, i64* %R3_Var | |
%ln3Nw = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s290_info to i64 | |
%ln3Nx = load i64** %Sp_Var | |
%ln3Ny = getelementptr inbounds i64* %ln3Nx, i32 0 | |
store i64 %ln3Nw, i64* %ln3Ny | |
%ln3Nz = load i64** %Base_Var | |
%ln3NA = load i64** %Sp_Var | |
%ln3NB = load i64** %Hp_Var | |
%ln3NC = load i64* %R1_Var | |
%ln3ND = load i64* %R2_Var | |
%ln3NE = load i64* %R3_Var | |
%ln3NF = load i64* %R4_Var | |
%ln3NG = load i64* %R5_Var | |
%ln3NH = load i64* %R6_Var | |
%ln3NI = load i64* %SpLim_Var | |
%ln3NJ = load float* %F1_Var | |
%ln3NK = load float* %F2_Var | |
%ln3NL = load float* %F3_Var | |
%ln3NM = load float* %F4_Var | |
%ln3NN = load double* %D1_Var | |
%ln3NO = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_flattenTreezuhelper_info( i64* %ln3Nz, i64* %ln3NA, i64* %ln3NB, i64 %ln3NC, i64 %ln3ND, i64 %ln3NE, i64 %ln3NF, i64 %ln3NG, i64 %ln3NH, i64 %ln3NI, float %ln3NJ, float %ln3NK, float %ln3NL, float %ln3NM, double %ln3NN, double %ln3NO ) nounwind | |
ret void | |
} | |
%s291_info_struct = type <{i64, i64}> | |
@s291_info_itable = internal constant %s291_info_struct<{i64 1, i64 17}>, section "X98A__STRIP,__me79", align 8 | |
define internal cc 10 void @s291_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me80" | |
{ | |
c3OP: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3OQ = load i64** %Sp_Var | |
%ln3OR = getelementptr inbounds i64* %ln3OQ, i32 -3 | |
%ln3OS = ptrtoint i64* %ln3OR to i64 | |
%ln3OT = load i64* %SpLim_Var | |
%ln3OU = icmp ult i64 %ln3OS, %ln3OT | |
br i1 %ln3OU, label %c3OW, label %n3OX | |
n3OX: | |
%ln3OY = ptrtoint [0 x i64]* @stg_upd_frame_info to i64 | |
%ln3OZ = load i64** %Sp_Var | |
%ln3P0 = getelementptr inbounds i64* %ln3OZ, i32 -2 | |
store i64 %ln3OY, i64* %ln3P0 | |
%ln3P1 = load i64* %R1_Var | |
%ln3P2 = load i64** %Sp_Var | |
%ln3P3 = getelementptr inbounds i64* %ln3P2, i32 -1 | |
store i64 %ln3P1, i64* %ln3P3 | |
%ln3P4 = load i64* %R1_Var | |
%ln3P5 = add i64 %ln3P4, 16 | |
%ln3P6 = inttoptr i64 %ln3P5 to i64* | |
%ln3P7 = load i64* %ln3P6 | |
store i64 %ln3P7, i64* %R2_Var | |
%ln3P8 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s28U_info to i64 | |
%ln3P9 = load i64** %Sp_Var | |
%ln3Pa = getelementptr inbounds i64* %ln3P9, i32 -3 | |
store i64 %ln3P8, i64* %ln3Pa | |
%ln3Pb = load i64** %Sp_Var | |
%ln3Pc = getelementptr inbounds i64* %ln3Pb, i32 -3 | |
%ln3Pd = ptrtoint i64* %ln3Pc to i64 | |
%ln3Pe = inttoptr i64 %ln3Pd to i64* | |
store i64* %ln3Pe, i64** %Sp_Var | |
%ln3Pf = load i64** %Base_Var | |
%ln3Pg = load i64** %Sp_Var | |
%ln3Ph = load i64** %Hp_Var | |
%ln3Pi = load i64* %R1_Var | |
%ln3Pj = load i64* %R2_Var | |
%ln3Pk = load i64* %R3_Var | |
%ln3Pl = load i64* %R4_Var | |
%ln3Pm = load i64* %R5_Var | |
%ln3Pn = load i64* %R6_Var | |
%ln3Po = load i64* %SpLim_Var | |
%ln3Pp = load float* %F1_Var | |
%ln3Pq = load float* %F2_Var | |
%ln3Pr = load float* %F3_Var | |
%ln3Ps = load float* %F4_Var | |
%ln3Pt = load double* %D1_Var | |
%ln3Pu = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_listSortzuzdstreeFromList_info( i64* %ln3Pf, i64* %ln3Pg, i64* %ln3Ph, i64 %ln3Pi, i64 %ln3Pj, i64 %ln3Pk, i64 %ln3Pl, i64 %ln3Pm, i64 %ln3Pn, i64 %ln3Po, float %ln3Pp, float %ln3Pq, float %ln3Pr, float %ln3Ps, double %ln3Pt, double %ln3Pu ) nounwind | |
ret void | |
c3OW: | |
%ln3Pv = load i64** %Base_Var | |
%ln3Pw = getelementptr inbounds i64* %ln3Pv, i32 -2 | |
%ln3Px = bitcast i64* %ln3Pw to i64* | |
%ln3Py = load i64* %ln3Px | |
%ln3Pz = inttoptr i64 %ln3Py to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3PA = load i64** %Base_Var | |
%ln3PB = load i64** %Sp_Var | |
%ln3PC = load i64** %Hp_Var | |
%ln3PD = load i64* %R1_Var | |
%ln3PE = load i64* %R2_Var | |
%ln3PF = load i64* %R3_Var | |
%ln3PG = load i64* %R4_Var | |
%ln3PH = load i64* %R5_Var | |
%ln3PI = load i64* %R6_Var | |
%ln3PJ = load i64* %SpLim_Var | |
%ln3PK = load float* %F1_Var | |
%ln3PL = load float* %F2_Var | |
%ln3PM = load float* %F3_Var | |
%ln3PN = load float* %F4_Var | |
%ln3PO = load double* %D1_Var | |
%ln3PP = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3Pz( i64* %ln3PA, i64* %ln3PB, i64* %ln3PC, i64 %ln3PD, i64 %ln3PE, i64 %ln3PF, i64 %ln3PG, i64 %ln3PH, i64 %ln3PI, i64 %ln3PJ, float %ln3PK, float %ln3PL, float %ln3PM, float %ln3PN, double %ln3PO, double %ln3PP ) nounwind | |
ret void | |
} | |
%s292_ret_struct = type <{i64, i64, i64}> | |
@s292_info_itable = internal constant %s292_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main1_srt_struct* @Main_main1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s292_info to i64)),i64 24), i64 0, i64 12884901920}>, section "X98A__STRIP,__me81", align 8 | |
define internal cc 10 void @s292_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me82" | |
{ | |
c3QT: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3QU = load i64** %Hp_Var | |
%ln3QV = getelementptr inbounds i64* %ln3QU, i32 3 | |
%ln3QW = ptrtoint i64* %ln3QV to i64 | |
%ln3QX = inttoptr i64 %ln3QW to i64* | |
store i64* %ln3QX, i64** %Hp_Var | |
%ln3QY = load i64** %Hp_Var | |
%ln3QZ = ptrtoint i64* %ln3QY to i64 | |
%ln3R0 = load i64** %Base_Var | |
%ln3R1 = getelementptr inbounds i64* %ln3R0, i32 18 | |
%ln3R2 = bitcast i64* %ln3R1 to i64* | |
%ln3R3 = load i64* %ln3R2 | |
%ln3R4 = icmp ugt i64 %ln3QZ, %ln3R3 | |
br i1 %ln3R4, label %c3R7, label %n3R8 | |
n3R8: | |
%ln3R9 = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s291_info to i64 | |
%ln3Ra = load i64** %Hp_Var | |
%ln3Rb = getelementptr inbounds i64* %ln3Ra, i32 -2 | |
store i64 %ln3R9, i64* %ln3Rb | |
%ln3Rc = load i64* %R1_Var | |
%ln3Rd = load i64** %Hp_Var | |
%ln3Re = getelementptr inbounds i64* %ln3Rd, i32 0 | |
store i64 %ln3Rc, i64* %ln3Re | |
%ln3Rf = ptrtoint [0 x i64]* @base_GHCziIOziHandleziFD_stdout_closure to i64 | |
store i64 %ln3Rf, i64* %R2_Var | |
%ln3Rg = load i64** %Hp_Var | |
%ln3Rh = getelementptr inbounds i64* %ln3Rg, i32 -2 | |
%ln3Ri = ptrtoint i64* %ln3Rh to i64 | |
store i64 %ln3Ri, i64* %R3_Var | |
%ln3Rj = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_True_closure to i64 | |
%ln3Rk = add i64 %ln3Rj, 2 | |
store i64 %ln3Rk, i64* %R4_Var | |
%ln3Rl = load i64** %Sp_Var | |
%ln3Rm = getelementptr inbounds i64* %ln3Rl, i32 1 | |
%ln3Rn = ptrtoint i64* %ln3Rm to i64 | |
%ln3Ro = inttoptr i64 %ln3Rn to i64* | |
store i64* %ln3Ro, i64** %Sp_Var | |
%ln3Rp = load i64** %Base_Var | |
%ln3Rq = load i64** %Sp_Var | |
%ln3Rr = load i64** %Hp_Var | |
%ln3Rs = load i64* %R1_Var | |
%ln3Rt = load i64* %R2_Var | |
%ln3Ru = load i64* %R3_Var | |
%ln3Rv = load i64* %R4_Var | |
%ln3Rw = load i64* %R5_Var | |
%ln3Rx = load i64* %R6_Var | |
%ln3Ry = load i64* %SpLim_Var | |
%ln3Rz = load float* %F1_Var | |
%ln3RA = load float* %F2_Var | |
%ln3RB = load float* %F3_Var | |
%ln3RC = load float* %F4_Var | |
%ln3RD = load double* %D1_Var | |
%ln3RE = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_GHCziIOziHandleziText_hPutStr2_info( i64* %ln3Rp, i64* %ln3Rq, i64* %ln3Rr, i64 %ln3Rs, i64 %ln3Rt, i64 %ln3Ru, i64 %ln3Rv, i64 %ln3Rw, i64 %ln3Rx, i64 %ln3Ry, float %ln3Rz, float %ln3RA, float %ln3RB, float %ln3RC, double %ln3RD, double %ln3RE ) nounwind | |
ret void | |
c3RF: | |
%ln3RG = load i64** %Base_Var | |
%ln3RH = getelementptr inbounds i64* %ln3RG, i32 8 | |
store i64 254, i64* %ln3RH | |
%ln3RI = load i64** %Base_Var | |
%ln3RJ = load i64** %Sp_Var | |
%ln3RK = load i64** %Hp_Var | |
%ln3RL = load i64* %R1_Var | |
%ln3RM = load i64* %R2_Var | |
%ln3RN = load i64* %R3_Var | |
%ln3RO = load i64* %R4_Var | |
%ln3RP = load i64* %R5_Var | |
%ln3RQ = load i64* %R6_Var | |
%ln3RR = load i64* %SpLim_Var | |
%ln3RS = load float* %F1_Var | |
%ln3RT = load float* %F2_Var | |
%ln3RU = load float* %F3_Var | |
%ln3RV = load float* %F4_Var | |
%ln3RW = load double* %D1_Var | |
%ln3RX = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @stg_gc_ut( i64* %ln3RI, i64* %ln3RJ, i64* %ln3RK, i64 %ln3RL, i64 %ln3RM, i64 %ln3RN, i64 %ln3RO, i64 %ln3RP, i64 %ln3RQ, i64 %ln3RR, float %ln3RS, float %ln3RT, float %ln3RU, float %ln3RV, double %ln3RW, double %ln3RX ) nounwind | |
ret void | |
c3R7: | |
%ln3RY = load i64** %Base_Var | |
%ln3RZ = getelementptr inbounds i64* %ln3RY, i32 24 | |
store i64 24, i64* %ln3RZ | |
br label %c3RF | |
} | |
@ghczmprim_GHCziTypes_True_closure = external global [0 x i64] | |
declare cc 10 void @base_GHCziIOziHandleziText_hPutStr2_info(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%s293_ret_struct = type <{i64, i64, i64}> | |
@s293_info_itable = internal constant %s293_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main1_srt_struct* @Main_main1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s293_info to i64)),i64 24), i64 0, i64 150323855392}>, section "X98A__STRIP,__me83", align 8 | |
define internal cc 10 void @s293_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me84" | |
{ | |
c3So: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3Sp = load i64* %R1_Var | |
%ln3Sq = add i64 %ln3Sp, 7 | |
%ln3Sr = inttoptr i64 %ln3Sq to i64* | |
%ln3Ss = load i64* %ln3Sr | |
store i64 %ln3Ss, i64* %R2_Var | |
%ln3St = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s292_info to i64 | |
%ln3Su = load i64** %Sp_Var | |
%ln3Sv = getelementptr inbounds i64* %ln3Su, i32 0 | |
store i64 %ln3St, i64* %ln3Sv | |
%ln3Sw = load i64** %Base_Var | |
%ln3Sx = load i64** %Sp_Var | |
%ln3Sy = load i64** %Hp_Var | |
%ln3Sz = load i64* %R1_Var | |
%ln3SA = load i64* %R2_Var | |
%ln3SB = load i64* %R3_Var | |
%ln3SC = load i64* %R4_Var | |
%ln3SD = load i64* %R5_Var | |
%ln3SE = load i64* %R6_Var | |
%ln3SF = load i64* %SpLim_Var | |
%ln3SG = load float* %F1_Var | |
%ln3SH = load float* %F2_Var | |
%ln3SI = load float* %F3_Var | |
%ln3SJ = load float* %F4_Var | |
%ln3SK = load double* %D1_Var | |
%ln3SL = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_zdwa_info( i64* %ln3Sw, i64* %ln3Sx, i64* %ln3Sy, i64 %ln3Sz, i64 %ln3SA, i64 %ln3SB, i64 %ln3SC, i64 %ln3SD, i64 %ln3SE, i64 %ln3SF, float %ln3SG, float %ln3SH, float %ln3SI, float %ln3SJ, double %ln3SK, double %ln3SL ) nounwind | |
ret void | |
} | |
%s294_ret_struct = type <{i64, i64, i64}> | |
@s294_info_itable = internal constant %s294_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main1_srt_struct* @Main_main1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s294_info to i64)),i64 24), i64 1, i64 253403070496}>, section "X98A__STRIP,__me85", align 8 | |
define internal cc 10 void @s294_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me86" | |
{ | |
c3Tg: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3Th = ptrtoint [0 x i64]* @base_GHCziRead_zdfReadInt2_closure to i64 | |
%ln3Ti = add i64 %ln3Th, 2 | |
store i64 %ln3Ti, i64* %R2_Var | |
%ln3Tj = load i64** %Sp_Var | |
%ln3Tk = getelementptr inbounds i64* %ln3Tj, i32 1 | |
%ln3Tl = bitcast i64* %ln3Tk to i64* | |
%ln3Tm = load i64* %ln3Tl | |
store i64 %ln3Tm, i64* %R3_Var | |
%ln3Tn = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s293_info to i64 | |
%ln3To = load i64** %Sp_Var | |
%ln3Tp = getelementptr inbounds i64* %ln3To, i32 1 | |
store i64 %ln3Tn, i64* %ln3Tp | |
%ln3Tq = load i64** %Sp_Var | |
%ln3Tr = getelementptr inbounds i64* %ln3Tq, i32 1 | |
%ln3Ts = ptrtoint i64* %ln3Tr to i64 | |
%ln3Tt = inttoptr i64 %ln3Ts to i64* | |
store i64* %ln3Tt, i64** %Sp_Var | |
%ln3Tu = load i64** %Base_Var | |
%ln3Tv = load i64** %Sp_Var | |
%ln3Tw = load i64** %Hp_Var | |
%ln3Tx = load i64* %R1_Var | |
%ln3Ty = load i64* %R2_Var | |
%ln3Tz = load i64* %R3_Var | |
%ln3TA = load i64* %R4_Var | |
%ln3TB = load i64* %R5_Var | |
%ln3TC = load i64* %R6_Var | |
%ln3TD = load i64* %SpLim_Var | |
%ln3TE = load float* %F1_Var | |
%ln3TF = load float* %F2_Var | |
%ln3TG = load float* %F3_Var | |
%ln3TH = load float* %F4_Var | |
%ln3TI = load double* %D1_Var | |
%ln3TJ = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_TextziRead_zdwread_info( i64* %ln3Tu, i64* %ln3Tv, i64* %ln3Tw, i64 %ln3Tx, i64 %ln3Ty, i64 %ln3Tz, i64 %ln3TA, i64 %ln3TB, i64 %ln3TC, i64 %ln3TD, float %ln3TE, float %ln3TF, float %ln3TG, float %ln3TH, double %ln3TI, double %ln3TJ ) nounwind | |
ret void | |
} | |
%s295_ret_struct = type <{i64, i64, i64}> | |
@s295_info_itable = internal constant %s295_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main1_srt_struct* @Main_main1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s295_info to i64)),i64 24), i64 0, i64 528280977440}>, section "X98A__STRIP,__me87", align 8 | |
define internal cc 10 void @s295_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me88" | |
{ | |
c3Uf: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3Ug = load i64* %R1_Var | |
%ln3Uh = load i64** %Sp_Var | |
%ln3Ui = getelementptr inbounds i64* %ln3Uh, i32 0 | |
store i64 %ln3Ug, i64* %ln3Ui | |
%ln3Uj = ptrtoint [0 x i64]* @base_GHCziIOziHandleziFD_stdout_closure to i64 | |
store i64 %ln3Uj, i64* %R2_Var | |
%ln3Uk = ptrtoint %Main_main2_closure_struct* @Main_main2_closure to i64 | |
store i64 %ln3Uk, i64* %R3_Var | |
%ln3Ul = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_True_closure to i64 | |
%ln3Um = add i64 %ln3Ul, 2 | |
store i64 %ln3Um, i64* %R4_Var | |
%ln3Un = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s294_info to i64 | |
%ln3Uo = load i64** %Sp_Var | |
%ln3Up = getelementptr inbounds i64* %ln3Uo, i32 -1 | |
store i64 %ln3Un, i64* %ln3Up | |
%ln3Uq = load i64** %Sp_Var | |
%ln3Ur = getelementptr inbounds i64* %ln3Uq, i32 -1 | |
%ln3Us = ptrtoint i64* %ln3Ur to i64 | |
%ln3Ut = inttoptr i64 %ln3Us to i64* | |
store i64* %ln3Ut, i64** %Sp_Var | |
%ln3Uu = load i64** %Base_Var | |
%ln3Uv = load i64** %Sp_Var | |
%ln3Uw = load i64** %Hp_Var | |
%ln3Ux = load i64* %R1_Var | |
%ln3Uy = load i64* %R2_Var | |
%ln3Uz = load i64* %R3_Var | |
%ln3UA = load i64* %R4_Var | |
%ln3UB = load i64* %R5_Var | |
%ln3UC = load i64* %R6_Var | |
%ln3UD = load i64* %SpLim_Var | |
%ln3UE = load float* %F1_Var | |
%ln3UF = load float* %F2_Var | |
%ln3UG = load float* %F3_Var | |
%ln3UH = load float* %F4_Var | |
%ln3UI = load double* %D1_Var | |
%ln3UJ = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_GHCziIOziHandleziText_hPutStr2_info( i64* %ln3Uu, i64* %ln3Uv, i64* %ln3Uw, i64 %ln3Ux, i64 %ln3Uy, i64 %ln3Uz, i64 %ln3UA, i64 %ln3UB, i64 %ln3UC, i64 %ln3UD, float %ln3UE, float %ln3UF, float %ln3UG, float %ln3UH, double %ln3UI, double %ln3UJ ) nounwind | |
ret void | |
} | |
%s296_ret_struct = type <{i64, i64, i64}> | |
@s296_info_itable = internal constant %s296_ret_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main1_srt_struct* @Main_main1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s296_info to i64)),i64 0), i64 0, i64 4393751543840}>, section "X98A__STRIP,__me89", align 8 | |
define internal cc 10 void @s296_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me90" | |
{ | |
c3V8: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3V9 = ptrtoint [0 x i64]* @base_GHCziIOziHandleziText_hGetLine3_closure to i64 | |
store i64 %ln3V9, i64* %R2_Var | |
%ln3Va = ptrtoint [0 x i64]* @base_GHCziIOziHandleziFD_stdin_closure to i64 | |
store i64 %ln3Va, i64* %R3_Var | |
%ln3Vb = ptrtoint [0 x i64]* @base_GHCziIOziHandleziText_hGetLine2_closure to i64 | |
%ln3Vc = add i64 %ln3Vb, 2 | |
store i64 %ln3Vc, i64* %R4_Var | |
%ln3Vd = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s295_info to i64 | |
%ln3Ve = load i64** %Sp_Var | |
%ln3Vf = getelementptr inbounds i64* %ln3Ve, i32 0 | |
store i64 %ln3Vd, i64* %ln3Vf | |
%ln3Vg = load i64** %Base_Var | |
%ln3Vh = load i64** %Sp_Var | |
%ln3Vi = load i64** %Hp_Var | |
%ln3Vj = load i64* %R1_Var | |
%ln3Vk = load i64* %R2_Var | |
%ln3Vl = load i64* %R3_Var | |
%ln3Vm = load i64* %R4_Var | |
%ln3Vn = load i64* %R5_Var | |
%ln3Vo = load i64* %R6_Var | |
%ln3Vp = load i64* %SpLim_Var | |
%ln3Vq = load float* %F1_Var | |
%ln3Vr = load float* %F2_Var | |
%ln3Vs = load float* %F3_Var | |
%ln3Vt = load float* %F4_Var | |
%ln3Vu = load double* %D1_Var | |
%ln3Vv = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_GHCziIOziHandleziInternals_wantReadableHandlezu1_info( i64* %ln3Vg, i64* %ln3Vh, i64* %ln3Vi, i64 %ln3Vj, i64 %ln3Vk, i64 %ln3Vl, i64 %ln3Vm, i64 %ln3Vn, i64 %ln3Vo, i64 %ln3Vp, float %ln3Vq, float %ln3Vr, float %ln3Vs, float %ln3Vt, double %ln3Vu, double %ln3Vv ) nounwind | |
ret void | |
} | |
%Main_main1_info_struct = type <{i64, i64, i64, i64}> | |
@Main_main1_info_itable = constant %Main_main1_info_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main1_srt_struct* @Main_main1_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main1_info to i64)),i64 0), i64 4294967299, i64 0, i64 8791798054927}>, section "X98A__STRIP,__me91", align 8 | |
define cc 10 void @Main_main1_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me92" | |
{ | |
c3Wq: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3Wr = load i64** %Sp_Var | |
%ln3Ws = getelementptr inbounds i64* %ln3Wr, i32 -2 | |
%ln3Wt = ptrtoint i64* %ln3Ws to i64 | |
%ln3Wu = load i64* %SpLim_Var | |
%ln3Wv = icmp ult i64 %ln3Wt, %ln3Wu | |
br i1 %ln3Wv, label %c3Wx, label %n3Wy | |
n3Wy: | |
%ln3Wz = ptrtoint [0 x i64]* @base_GHCziIOziHandleziFD_stdout_closure to i64 | |
store i64 %ln3Wz, i64* %R2_Var | |
%ln3WA = ptrtoint %Main_main3_closure_struct* @Main_main3_closure to i64 | |
store i64 %ln3WA, i64* %R3_Var | |
%ln3WB = ptrtoint [0 x i64]* @ghczmprim_GHCziTypes_True_closure to i64 | |
%ln3WC = add i64 %ln3WB, 2 | |
store i64 %ln3WC, i64* %R4_Var | |
%ln3WD = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @s296_info to i64 | |
%ln3WE = load i64** %Sp_Var | |
%ln3WF = getelementptr inbounds i64* %ln3WE, i32 -1 | |
store i64 %ln3WD, i64* %ln3WF | |
%ln3WG = load i64** %Sp_Var | |
%ln3WH = getelementptr inbounds i64* %ln3WG, i32 -1 | |
%ln3WI = ptrtoint i64* %ln3WH to i64 | |
%ln3WJ = inttoptr i64 %ln3WI to i64* | |
store i64* %ln3WJ, i64** %Sp_Var | |
%ln3WK = load i64** %Base_Var | |
%ln3WL = load i64** %Sp_Var | |
%ln3WM = load i64** %Hp_Var | |
%ln3WN = load i64* %R1_Var | |
%ln3WO = load i64* %R2_Var | |
%ln3WP = load i64* %R3_Var | |
%ln3WQ = load i64* %R4_Var | |
%ln3WR = load i64* %R5_Var | |
%ln3WS = load i64* %R6_Var | |
%ln3WT = load i64* %SpLim_Var | |
%ln3WU = load float* %F1_Var | |
%ln3WV = load float* %F2_Var | |
%ln3WW = load float* %F3_Var | |
%ln3WX = load float* %F4_Var | |
%ln3WY = load double* %D1_Var | |
%ln3WZ = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_GHCziIOziHandleziText_hPutStr2_info( i64* %ln3WK, i64* %ln3WL, i64* %ln3WM, i64 %ln3WN, i64 %ln3WO, i64 %ln3WP, i64 %ln3WQ, i64 %ln3WR, i64 %ln3WS, i64 %ln3WT, float %ln3WU, float %ln3WV, float %ln3WW, float %ln3WX, double %ln3WY, double %ln3WZ ) nounwind | |
ret void | |
c3Wx: | |
%ln3X0 = ptrtoint %Main_main1_closure_struct* @Main_main1_closure to i64 | |
store i64 %ln3X0, i64* %R1_Var | |
%ln3X1 = load i64** %Base_Var | |
%ln3X2 = getelementptr inbounds i64* %ln3X1, i32 -1 | |
%ln3X3 = bitcast i64* %ln3X2 to i64* | |
%ln3X4 = load i64* %ln3X3 | |
%ln3X5 = inttoptr i64 %ln3X4 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln3X6 = load i64** %Base_Var | |
%ln3X7 = load i64** %Sp_Var | |
%ln3X8 = load i64** %Hp_Var | |
%ln3X9 = load i64* %R1_Var | |
%ln3Xa = load i64* %R2_Var | |
%ln3Xb = load i64* %R3_Var | |
%ln3Xc = load i64* %R4_Var | |
%ln3Xd = load i64* %R5_Var | |
%ln3Xe = load i64* %R6_Var | |
%ln3Xf = load i64* %SpLim_Var | |
%ln3Xg = load float* %F1_Var | |
%ln3Xh = load float* %F2_Var | |
%ln3Xi = load float* %F3_Var | |
%ln3Xj = load float* %F4_Var | |
%ln3Xk = load double* %D1_Var | |
%ln3Xl = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln3X5( i64* %ln3X6, i64* %ln3X7, i64* %ln3X8, i64 %ln3X9, i64 %ln3Xa, i64 %ln3Xb, i64 %ln3Xc, i64 %ln3Xd, i64 %ln3Xe, i64 %ln3Xf, float %ln3Xg, float %ln3Xh, float %ln3Xi, float %ln3Xj, double %ln3Xk, double %ln3Xl ) nounwind | |
ret void | |
} | |
%Main_main_info_struct = type <{i64, i64, i64, i64}> | |
@Main_main_info_itable = constant %Main_main_info_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main_srt_struct* @Main_main_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main_info to i64)),i64 0), i64 4294967299, i64 0, i64 4294967311}>, section "X98A__STRIP,__me93", align 8 | |
define cc 10 void @Main_main_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me94" | |
{ | |
c3XG: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3XH = load i64** %Base_Var | |
%ln3XI = load i64** %Sp_Var | |
%ln3XJ = load i64** %Hp_Var | |
%ln3XK = load i64* %R1_Var | |
%ln3XL = load i64* %R2_Var | |
%ln3XM = load i64* %R3_Var | |
%ln3XN = load i64* %R4_Var | |
%ln3XO = load i64* %R5_Var | |
%ln3XP = load i64* %R6_Var | |
%ln3XQ = load i64* %SpLim_Var | |
%ln3XR = load float* %F1_Var | |
%ln3XS = load float* %F2_Var | |
%ln3XT = load float* %F3_Var | |
%ln3XU = load float* %F4_Var | |
%ln3XV = load double* %D1_Var | |
%ln3XW = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_main1_info( i64* %ln3XH, i64* %ln3XI, i64* %ln3XJ, i64 %ln3XK, i64 %ln3XL, i64 %ln3XM, i64 %ln3XN, i64 %ln3XO, i64 %ln3XP, i64 %ln3XQ, float %ln3XR, float %ln3XS, float %ln3XT, float %ln3XU, double %ln3XV, double %ln3XW ) nounwind | |
ret void | |
} | |
%Main_main4_info_struct = type <{i64, i64, i64, i64}> | |
@Main_main4_info_itable = constant %Main_main4_info_struct<{i64 add (i64 sub (i64 ptrtoint (%Main_main4_srt_struct* @Main_main4_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_main4_info to i64)),i64 0), i64 4294967299, i64 0, i64 12884901903}>, section "X98A__STRIP,__me95", align 8 | |
define cc 10 void @Main_main4_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me96" | |
{ | |
c3Yj: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3Yk = ptrtoint %Main_main1_closure_struct* @Main_main1_closure to i64 | |
%ln3Yl = add i64 %ln3Yk, 1 | |
store i64 %ln3Yl, i64* %R2_Var | |
%ln3Ym = load i64** %Base_Var | |
%ln3Yn = load i64** %Sp_Var | |
%ln3Yo = load i64** %Hp_Var | |
%ln3Yp = load i64* %R1_Var | |
%ln3Yq = load i64* %R2_Var | |
%ln3Yr = load i64* %R3_Var | |
%ln3Ys = load i64* %R4_Var | |
%ln3Yt = load i64* %R5_Var | |
%ln3Yu = load i64* %R6_Var | |
%ln3Yv = load i64* %SpLim_Var | |
%ln3Yw = load float* %F1_Var | |
%ln3Yx = load float* %F2_Var | |
%ln3Yy = load float* %F3_Var | |
%ln3Yz = load float* %F4_Var | |
%ln3YA = load double* %D1_Var | |
%ln3YB = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @base_GHCziTopHandler_runMainIO1_info( i64* %ln3Ym, i64* %ln3Yn, i64* %ln3Yo, i64 %ln3Yp, i64 %ln3Yq, i64 %ln3Yr, i64 %ln3Ys, i64 %ln3Yt, i64 %ln3Yu, i64 %ln3Yv, float %ln3Yw, float %ln3Yx, float %ln3Yy, float %ln3Yz, double %ln3YA, double %ln3YB ) nounwind | |
ret void | |
} | |
declare cc 10 void @base_GHCziTopHandler_runMainIO1_info(i64* noalias nocapture, i64* noalias nocapture, i64* noalias nocapture, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double) align 8 | |
%ZCMain_main_info_struct = type <{i64, i64, i64, i64}> | |
@ZCMain_main_info_itable = constant %ZCMain_main_info_struct<{i64 add (i64 sub (i64 ptrtoint (%ZCMain_main_srt_struct* @ZCMain_main_srt to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @ZCMain_main_info to i64)),i64 0), i64 4294967299, i64 0, i64 4294967311}>, section "X98A__STRIP,__me97", align 8 | |
define cc 10 void @ZCMain_main_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me98" | |
{ | |
c3YW: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln3YX = load i64** %Base_Var | |
%ln3YY = load i64** %Sp_Var | |
%ln3YZ = load i64** %Hp_Var | |
%ln3Z0 = load i64* %R1_Var | |
%ln3Z1 = load i64* %R2_Var | |
%ln3Z2 = load i64* %R3_Var | |
%ln3Z3 = load i64* %R4_Var | |
%ln3Z4 = load i64* %R5_Var | |
%ln3Z5 = load i64* %R6_Var | |
%ln3Z6 = load i64* %SpLim_Var | |
%ln3Z7 = load float* %F1_Var | |
%ln3Z8 = load float* %F2_Var | |
%ln3Z9 = load float* %F3_Var | |
%ln3Za = load float* %F4_Var | |
%ln3Zb = load double* %D1_Var | |
%ln3Zc = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* @Main_main4_info( i64* %ln3YX, i64* %ln3YY, i64* %ln3YZ, i64 %ln3Z0, i64 %ln3Z1, i64 %ln3Z2, i64 %ln3Z3, i64 %ln3Z4, i64 %ln3Z5, i64 %ln3Z6, float %ln3Z7, float %ln3Z8, float %ln3Z9, float %ln3Za, double %ln3Zb, double %ln3Zc ) nounwind | |
ret void | |
} | |
%Main_Node_info_struct = type <{i64, i64, i64}> | |
@Main_Node_info_itable = internal constant %Main_Node_info_struct<{i64 12884901908, i64 0, i64 15}>, section "X98A__STRIP,__me99", align 8 | |
define internal cc 10 void @Main_Node_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me100" | |
{ | |
c40s: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln40t = load i64** %Hp_Var | |
%ln40u = getelementptr inbounds i64* %ln40t, i32 4 | |
%ln40v = ptrtoint i64* %ln40u to i64 | |
%ln40w = inttoptr i64 %ln40v to i64* | |
store i64* %ln40w, i64** %Hp_Var | |
%ln40x = load i64** %Hp_Var | |
%ln40y = ptrtoint i64* %ln40x to i64 | |
%ln40z = load i64** %Base_Var | |
%ln40A = getelementptr inbounds i64* %ln40z, i32 18 | |
%ln40B = bitcast i64* %ln40A to i64* | |
%ln40C = load i64* %ln40B | |
%ln40D = icmp ugt i64 %ln40y, %ln40C | |
br i1 %ln40D, label %c40H, label %n40I | |
n40I: | |
%ln40J = ptrtoint void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64 | |
%ln40K = load i64** %Hp_Var | |
%ln40L = getelementptr inbounds i64* %ln40K, i32 -3 | |
store i64 %ln40J, i64* %ln40L | |
%ln40M = load i64* %R2_Var | |
%ln40N = load i64** %Hp_Var | |
%ln40O = getelementptr inbounds i64* %ln40N, i32 -2 | |
store i64 %ln40M, i64* %ln40O | |
%ln40P = load i64* %R3_Var | |
%ln40Q = load i64** %Hp_Var | |
%ln40R = getelementptr inbounds i64* %ln40Q, i32 -1 | |
store i64 %ln40P, i64* %ln40R | |
%ln40S = load i64* %R4_Var | |
%ln40T = load i64** %Hp_Var | |
%ln40U = getelementptr inbounds i64* %ln40T, i32 0 | |
store i64 %ln40S, i64* %ln40U | |
%ln40V = load i64** %Hp_Var | |
%ln40W = ptrtoint i64* %ln40V to i64 | |
%ln40X = add i64 %ln40W, -22 | |
store i64 %ln40X, i64* %R1_Var | |
%ln40Y = load i64** %Sp_Var | |
%ln40Z = getelementptr inbounds i64* %ln40Y, i32 0 | |
%ln410 = bitcast i64* %ln40Z to i64* | |
%ln411 = load i64* %ln410 | |
%ln412 = inttoptr i64 %ln411 to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln413 = load i64** %Base_Var | |
%ln414 = load i64** %Sp_Var | |
%ln415 = load i64** %Hp_Var | |
%ln416 = load i64* %R1_Var | |
%ln417 = load i64* %R2_Var | |
%ln418 = load i64* %R3_Var | |
%ln419 = load i64* %R4_Var | |
%ln41a = load i64* %R5_Var | |
%ln41b = load i64* %R6_Var | |
%ln41c = load i64* %SpLim_Var | |
%ln41d = load float* %F1_Var | |
%ln41e = load float* %F2_Var | |
%ln41f = load float* %F3_Var | |
%ln41g = load float* %F4_Var | |
%ln41h = load double* %D1_Var | |
%ln41i = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln412( i64* %ln413, i64* %ln414, i64* %ln415, i64 %ln416, i64 %ln417, i64 %ln418, i64 %ln419, i64 %ln41a, i64 %ln41b, i64 %ln41c, float %ln41d, float %ln41e, float %ln41f, float %ln41g, double %ln41h, double %ln41i ) nounwind | |
ret void | |
c41j: | |
%ln41k = ptrtoint %Main_Node_closure_struct* @Main_Node_closure to i64 | |
store i64 %ln41k, i64* %R1_Var | |
%ln41l = load i64** %Base_Var | |
%ln41m = getelementptr inbounds i64* %ln41l, i32 -1 | |
%ln41n = bitcast i64* %ln41m to i64* | |
%ln41o = load i64* %ln41n | |
%ln41p = inttoptr i64 %ln41o to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln41q = load i64** %Base_Var | |
%ln41r = load i64** %Sp_Var | |
%ln41s = load i64** %Hp_Var | |
%ln41t = load i64* %R1_Var | |
%ln41u = load i64* %R2_Var | |
%ln41v = load i64* %R3_Var | |
%ln41w = load i64* %R4_Var | |
%ln41x = load i64* %R5_Var | |
%ln41y = load i64* %R6_Var | |
%ln41z = load i64* %SpLim_Var | |
%ln41A = load float* %F1_Var | |
%ln41B = load float* %F2_Var | |
%ln41C = load float* %F3_Var | |
%ln41D = load float* %F4_Var | |
%ln41E = load double* %D1_Var | |
%ln41F = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln41p( i64* %ln41q, i64* %ln41r, i64* %ln41s, i64 %ln41t, i64 %ln41u, i64 %ln41v, i64 %ln41w, i64 %ln41x, i64 %ln41y, i64 %ln41z, float %ln41A, float %ln41B, float %ln41C, float %ln41D, double %ln41E, double %ln41F ) nounwind | |
ret void | |
c40H: | |
%ln41G = load i64** %Base_Var | |
%ln41H = getelementptr inbounds i64* %ln41G, i32 24 | |
store i64 32, i64* %ln41H | |
br label %c41j | |
} | |
%Main_Empty_static_info_struct = type <{i64, i64, i64}> | |
@Main_Empty_static_info_itable = constant %Main_Empty_static_info_struct<{i64 add (i64 sub (i64 ptrtoint (%i29G_str_struct* @i29G_str to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Empty_static_info to i64)),i64 0), i64 0, i64 8}>, section "X98A__STRIP,__me101", align 8 | |
define cc 10 void @Main_Empty_static_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me102" | |
{ | |
c426: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln427 = load i64* %R1_Var | |
%ln428 = add i64 %ln427, 1 | |
store i64 %ln428, i64* %R1_Var | |
%ln429 = load i64** %Sp_Var | |
%ln42a = getelementptr inbounds i64* %ln429, i32 0 | |
%ln42b = bitcast i64* %ln42a to i64* | |
%ln42c = load i64* %ln42b | |
%ln42d = inttoptr i64 %ln42c to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln42e = load i64** %Base_Var | |
%ln42f = load i64** %Sp_Var | |
%ln42g = load i64** %Hp_Var | |
%ln42h = load i64* %R1_Var | |
%ln42i = load i64* %R2_Var | |
%ln42j = load i64* %R3_Var | |
%ln42k = load i64* %R4_Var | |
%ln42l = load i64* %R5_Var | |
%ln42m = load i64* %R6_Var | |
%ln42n = load i64* %SpLim_Var | |
%ln42o = load float* %F1_Var | |
%ln42p = load float* %F2_Var | |
%ln42q = load float* %F3_Var | |
%ln42r = load float* %F4_Var | |
%ln42s = load double* %D1_Var | |
%ln42t = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln42d( i64* %ln42e, i64* %ln42f, i64* %ln42g, i64 %ln42h, i64 %ln42i, i64 %ln42j, i64 %ln42k, i64 %ln42l, i64 %ln42m, i64 %ln42n, float %ln42o, float %ln42p, float %ln42q, float %ln42r, double %ln42s, double %ln42t ) nounwind | |
ret void | |
} | |
%Main_Node_con_info_struct = type <{i64, i64, i64}> | |
@Main_Node_con_info_itable = constant %Main_Node_con_info_struct<{i64 add (i64 sub (i64 ptrtoint (%i29F_str_struct* @i29F_str to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_con_info to i64)),i64 0), i64 3, i64 4294967297}>, section "X98A__STRIP,__me103", align 8 | |
define cc 10 void @Main_Node_con_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me104" | |
{ | |
c42S: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln42T = load i64* %R1_Var | |
%ln42U = add i64 %ln42T, 2 | |
store i64 %ln42U, i64* %R1_Var | |
%ln42V = load i64** %Sp_Var | |
%ln42W = getelementptr inbounds i64* %ln42V, i32 0 | |
%ln42X = bitcast i64* %ln42W to i64* | |
%ln42Y = load i64* %ln42X | |
%ln42Z = inttoptr i64 %ln42Y to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln430 = load i64** %Base_Var | |
%ln431 = load i64** %Sp_Var | |
%ln432 = load i64** %Hp_Var | |
%ln433 = load i64* %R1_Var | |
%ln434 = load i64* %R2_Var | |
%ln435 = load i64* %R3_Var | |
%ln436 = load i64* %R4_Var | |
%ln437 = load i64* %R5_Var | |
%ln438 = load i64* %R6_Var | |
%ln439 = load i64* %SpLim_Var | |
%ln43a = load float* %F1_Var | |
%ln43b = load float* %F2_Var | |
%ln43c = load float* %F3_Var | |
%ln43d = load float* %F4_Var | |
%ln43e = load double* %D1_Var | |
%ln43f = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln42Z( i64* %ln430, i64* %ln431, i64* %ln432, i64 %ln433, i64 %ln434, i64 %ln435, i64 %ln436, i64 %ln437, i64 %ln438, i64 %ln439, float %ln43a, float %ln43b, float %ln43c, float %ln43d, double %ln43e, double %ln43f ) nounwind | |
ret void | |
} | |
%Main_Node_static_info_struct = type <{i64, i64, i64}> | |
@Main_Node_static_info_itable = constant %Main_Node_static_info_struct<{i64 add (i64 sub (i64 ptrtoint (%i29E_str_struct* @i29E_str to i64),i64 ptrtoint (void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* @Main_Node_static_info to i64)),i64 0), i64 3, i64 4294967303}>, section "X98A__STRIP,__me105", align 8 | |
define cc 10 void @Main_Node_static_info(i64* noalias nocapture %Base_Arg, i64* noalias nocapture %Sp_Arg, i64* noalias nocapture %Hp_Arg, i64 %R1_Arg, i64 %R2_Arg, i64 %R3_Arg, i64 %R4_Arg, i64 %R5_Arg, i64 %R6_Arg, i64 %SpLim_Arg, float %F1_Arg, float %F2_Arg, float %F3_Arg, float %F4_Arg, double %D1_Arg, double %D2_Arg) align 8 nounwind section "X98A__STRIP,__me106" | |
{ | |
c43E: | |
%Base_Var = alloca i64*, i32 1 | |
store i64* %Base_Arg, i64** %Base_Var | |
%Sp_Var = alloca i64*, i32 1 | |
store i64* %Sp_Arg, i64** %Sp_Var | |
%Hp_Var = alloca i64*, i32 1 | |
store i64* %Hp_Arg, i64** %Hp_Var | |
%R1_Var = alloca i64, i32 1 | |
store i64 %R1_Arg, i64* %R1_Var | |
%R2_Var = alloca i64, i32 1 | |
store i64 %R2_Arg, i64* %R2_Var | |
%R3_Var = alloca i64, i32 1 | |
store i64 %R3_Arg, i64* %R3_Var | |
%R4_Var = alloca i64, i32 1 | |
store i64 %R4_Arg, i64* %R4_Var | |
%R5_Var = alloca i64, i32 1 | |
store i64 %R5_Arg, i64* %R5_Var | |
%R6_Var = alloca i64, i32 1 | |
store i64 %R6_Arg, i64* %R6_Var | |
%SpLim_Var = alloca i64, i32 1 | |
store i64 %SpLim_Arg, i64* %SpLim_Var | |
%F1_Var = alloca float, i32 1 | |
store float %F1_Arg, float* %F1_Var | |
%F2_Var = alloca float, i32 1 | |
store float %F2_Arg, float* %F2_Var | |
%F3_Var = alloca float, i32 1 | |
store float %F3_Arg, float* %F3_Var | |
%F4_Var = alloca float, i32 1 | |
store float %F4_Arg, float* %F4_Var | |
%D1_Var = alloca double, i32 1 | |
store double %D1_Arg, double* %D1_Var | |
%D2_Var = alloca double, i32 1 | |
store double %D2_Arg, double* %D2_Var | |
%ln43F = load i64* %R1_Var | |
%ln43G = add i64 %ln43F, 2 | |
store i64 %ln43G, i64* %R1_Var | |
%ln43H = load i64** %Sp_Var | |
%ln43I = getelementptr inbounds i64* %ln43H, i32 0 | |
%ln43J = bitcast i64* %ln43I to i64* | |
%ln43K = load i64* %ln43J | |
%ln43L = inttoptr i64 %ln43K to void (i64*, i64*, i64*, i64, i64, i64, i64, i64, i64, i64, float, float, float, float, double, double)* | |
%ln43M = load i64** %Base_Var | |
%ln43N = load i64** %Sp_Var | |
%ln43O = load i64** %Hp_Var | |
%ln43P = load i64* %R1_Var | |
%ln43Q = load i64* %R2_Var | |
%ln43R = load i64* %R3_Var | |
%ln43S = load i64* %R4_Var | |
%ln43T = load i64* %R5_Var | |
%ln43U = load i64* %R6_Var | |
%ln43V = load i64* %SpLim_Var | |
%ln43W = load float* %F1_Var | |
%ln43X = load float* %F2_Var | |
%ln43Y = load float* %F3_Var | |
%ln43Z = load float* %F4_Var | |
%ln440 = load double* %D1_Var | |
%ln441 = load double* %D2_Var | |
tail call cc 10 void (i64*,i64*,i64*,i64,i64,i64,i64,i64,i64,i64,float,float,float,float,double,double)* %ln43L( i64* %ln43M, i64* %ln43N, i64* %ln43O, i64 %ln43P, i64 %ln43Q, i64 %ln43R, i64 %ln43S, i64 %ln43T, i64 %ln43U, i64 %ln43V, float %ln43W, float %ln43X, float %ln43Y, float %ln43Z, double %ln440, double %ln441 ) nounwind | |
ret void | |
} | |
@llvm.used = appending global [34 x i8*] [i8* bitcast (%Main_Node_info_struct* @Main_Node_info_itable to i8*), i8* bitcast (%s296_ret_struct* @s296_info_itable to i8*), i8* bitcast (%s295_ret_struct* @s295_info_itable to i8*), i8* bitcast (%s294_ret_struct* @s294_info_itable to i8*), i8* bitcast (%s293_ret_struct* @s293_info_itable to i8*), i8* bitcast (%s292_ret_struct* @s292_info_itable to i8*), i8* bitcast (%s291_info_struct* @s291_info_itable to i8*), i8* bitcast (%s28U_ret_struct* @s28U_info_itable to i8*), i8* bitcast (%s290_ret_struct* @s290_info_itable to i8*), i8* bitcast (%s29b_ret_struct* @s29b_info_itable to i8*), i8* bitcast (%s29l_ret_struct* @s29l_info_itable to i8*), i8* bitcast (%s29k_ret_struct* @s29k_info_itable to i8*), i8* bitcast (%s28o_info_struct* @s28o_info_itable to i8*), i8* bitcast (%s29c_ret_struct* @s29c_info_itable to i8*), i8* bitcast (%s29g_ret_struct* @s29g_info_itable to i8*), i8* bitcast (%s27U_ret_struct* @s27U_info_itable to i8*), i8* bitcast (%s29j_ret_struct* @s29j_info_itable to i8*), i8* bitcast (%s29d_ret_struct* @s29d_info_itable to i8*), i8* bitcast (%s27I_info_struct* @s27I_info_itable to i8*), i8* bitcast (%s29h_ret_struct* @s29h_info_itable to i8*), i8* bitcast (%s29i_ret_struct* @s29i_info_itable to i8*), i8* bitcast (%s29m_ret_struct* @s29m_info_itable to i8*), i8* bitcast (%s29o_ret_struct* @s29o_info_itable to i8*), i8* bitcast (%s29r_ret_struct* @s29r_info_itable to i8*), i8* bitcast (%s27j_ret_struct* @s27j_info_itable to i8*), i8* bitcast (%s29t_info_struct* @s29t_info_itable to i8*), i8* bitcast (%s27m_info_struct* @s27m_info_itable to i8*), i8* bitcast (%r26o_info_struct* @r26o_info_itable to i8*), i8* bitcast (%s29v_ret_struct* @s29v_info_itable to i8*), i8* bitcast (%s26S_ret_struct* @s26S_info_itable to i8*), i8* bitcast (%s29y_info_struct* @s29y_info_itable to i8*), i8* bitcast (%s29w_info_struct* @s29w_info_itable to i8*), i8* bitcast (%s29z_ret_struct* @s29z_info_itable to i8*), i8* bitcast (%s26A_info_struct* @s26A_info_itable to i8*)], section "llvm.metadata" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment