Caml1999T037ifbC-StackframegenР$Mach$Mach8asmcomp/stackframegen.mlSS@@ 3@@@@@@#intA;@@@A@@@@@&_none_@@A@A@$charB;@@A@@@@@@A@&stringQ;@@ A@@@@@ @@@%bytesC;@@A@@@@@@@@%floatD;@@A@@@@@@@@$boolE;@@%falsec@@@$trued@@#@@@A@@@@@$@A@$unitF;@@"()e@@.@@@A@@@@@/@A@ #exnG;@@@A@@@@@3@@@#effH;@@O@A@A@@@@@@<@@@,continuationI;@@Q@@P@B@A@nY@@@@@@K@@@%arrayJ;@@R@A@A@@@@@@U@@@ $listK;@@S@A"[]f@@b@"::g@@@T@@o@ @@A@Y@@@@@r@@@&optionL;@@V@A$Noneh@@@$Somei@@@@@A@Y@@@@@@@@)nativeintM;@@A@@@@@@@@%int32N;@@A@@@@@@@@%int64O;@@A@@@@@@@@&lazy_tP;@@X@AJA@Y@@@@@@@@5extension_constructorR;@@A@@@@@@@@*floatarrayS;@@A@@@@@@@@&iarrayT;@@Y@A[A@Y@@@@@@@@*atomic_locU;@@Z@AdA@@@@@@@@@.Assert_failure`#@@@@@J@@@@@@@@[@@AϠ=ocaml.warn_on_literal_patternӐ@@0Division_by_zero]#@@@A٠  @+End_of_file\#$@@@Aᠰ@'FailureY#,@'@@A꠰@0Invalid_argumentX#5@0@@A󠰠$#@-Match_failureV#>@@=@9@;@@a@@A54@)Not_foundZ#O@@@A =<@-Out_of_memoryW#W@@@AED@.Stack_overflow^#_@@@AML@.Sys_blocked_io_#g@@@A$U'T'@)Sys_error[#o@j@@A-^0]0@:Undefined_recursive_modulea#x@@w@s@u@@h@@A>oAnA@:Continuation_already_takenb#@@@AFwIvI@&Stdlib@@@@A3wvvwwwww@v@@S~@@@3|{{|||||@z@@A+/analysis_result!AUU@@;@@6contains_nontail_calls"@@S@@@VV@@GA.frame_required#@@_@@@WW@@HA0extra_stack_used$@@@@@XX@@IA@@A@@@@@UY@@@@FA@#))$V@#@@Ш@г,$boolVV@@43@LB;@@@A@@@@@@@@@@@@;@@@7@#33.W@-@@Ш@г6$boolWW@@>@@A@@@=@#994X @3@@Ш@г<#intX X@@D(@@G@@+@C@@A@?@@?>@3@w@@/@@2stackframe_generic[![3@'B&B%BБఠ$self( [>[B@ KA[=[C@@1trap_handler_sizeA@@@@@D@'is_callA@$Mach0instruction_desc@@@D@$boolE@@@ D@@@D@@@D@.frame_requiredA@'fundecl@@@[D@@ @@@TD@@@@!D@@@D@@@D@@@D@'analyzeA@#D@@@@!D@@@D@@@D@@@@D@@D@@D@@D@@@D@3}||}}}}}@ ;@@@A&A%KAJlAk{Az@@"C@"@"@"@"@"C@@@@@@@[t@@@@JA#@&@@:@A@64@@@@@Ab@A@^@UO@@@@@@@B@A@z@@@@@@@@@@@@@AC'*undef*C@@@"#@@@@@@@ ;@@@AeAdAAA@@")@"/@"0@"1@"2C@Z@@@@@@A@@@>@@>@@@)selfpat-*)LA@]@Ȱ``@AШ@гɠ#int``@@3@qAA@@@@@`@@Ӱpp@AA࣠@&self-13Aఠ&self-*2AOA@3        @ t@.@AҠ/@0@1@ABC@!1@0MAE@@3NA@@@  5PA@@@@@Ġ#Iop1q2q@;#Iop@@@_@)operation@@@M@A@BG@A0asmcomp/mach.mliT  T  @@@ w@Ġ)Icall_indOqPq@;)Icall_ind@@@7@@@CPO@Ann@@@#i@@@  @@#@@@3ZYYZZZZZ@RXN@V@U`O@W@@@@@Ġ)Icall_immjqkq@;)Icall_imm@7@@@C@ACPO@A6o7o&@@;@@$func@@&stringQ@@@FoGo$@@Qj@@CA@@@@@[@@@EATk@@qq@@"@@@5@@@+@@\@@@9@@J @@`@@@=@Ġ(Iextcallq q@;(IextcallS@o@@@?@AEPO@Anracou @@;@@$func@@8@@@ |ras}ra@@o@&ty_res@@#Cmm(machtype@@@!ss@@p@'ty_args@@$listK'exttype@@@#@@@"ss@@q@%alloc@@$boolE@@@$tt@@r@)stack_ofs@@#intA@@@%uu @@s@@EA@@@@@@@@CAt@@qq@@a@@@@@@j@@@@@@@qq@@@@@@@@@@@@@ภ$trueqq@;@@@M@@@AB@@A@@@ @@@Ġ#Iop/r!0r$@Ġ&Ialloc8r&9r,@;&Ialloc@@@@;@AIPO@A} n p} n @@;@@%bytes@@W@@@.} n ~} n @@|@'dbginfo@@)Debuginfo-alloc_dbginfo@@@/"} n #} n @@-}@@IA@@@@@7@@@wAA0~@@kr-lr.@@0@@@@@@qr%rr/@@:@@@@@@H@@F@Ġ#Iop}r2~r5@LĠ%Ipollr7r<@;%Ipoll7@S@@@9@ANPO@ARE  SE  @@;@@,return_label@@&optionL%label@@@6@@@5iE  jE  @@tL@@NA@@@@@~@@@@AwM@@r=r>@@)@@@ X@@@r6r?@@@@@ ^@@@A@@_@@@@`@@@ภrCrG@@@@h@Ġ#Ioptt@Ġ&Iintoptt@;&Iintop@1integer_operation@@@0@AJPO@A~  ~  @@@@Ġ+Icheckboundtt@;+Icheckbound@@@@@@LMA@AZz|Zz@@@X@@@tt@@ @@@@@@)@@@@@@Ġ*Iintop_imm t t@;*Iintop_imm@2@@@1@@@2@BKPO@A    @@@@@Ġ+Icheckbound%t&t@5@@@@I@@@@@.t/t@@@@@@@@(4t@@@@@@@9t:t@@@@@@@@p@@@@@డ!!HtIt@@&Stdlib#ref!a@@@@i@@h'%field0AA @@@*stdlib.mli@@@@@@5D@$D@ =G@G@ D@@@ E@@ C@@డ'Clflags%debug'Clflags9t@ tt@?@&Stdlib#ref$boolE@@@ =@@@ <@1utils/clflags.mliS [ [S [ o@@'Clflagsm@V@@V<@@@ JH@H@H@@`"@@mI@Ġ&Iraisevv @;&Iraise@&Lambda*raise_kind@@@^@AFBG@A[  [  @@@~@Ġ&Lambdav v @-Raise_notracev v @@;-Raise_notrace&Lambda*raise_kind@@@ }@@@BC@@A1lambda/lambda.mli@@@ @@@@@/@@@ ,@@@8@@@@@ภ%falsev v #@;@@@@B@@A@@@@@@Ġ&Iraisew $ (w $ .@KĠ&Lambdaw $ 0 w $ 6@-Raise_regular w $ 7w $ D@@;-Raise_regular=@@@@C@@A5oq6o@@@=@@@ @@c@@@ 1@Ġ&Lambda#w $ G$w $ M@-Raise_reraise(w $ N)w $ [@@;-Raise_reraiseX@@@AC@@APQ@@@X@@@ @@~@@@ 4@@7w $ /8w $ \@@@@@ 5@@@B@@ @@@ภ'Bw $ `Cw $ d@&@@@ @Ġ(ItrywithMy  Ny  @;(Itrywith@+instruction@@@\@@@]@BEBG@AZ  Z  @@@(}@@cy  dy  @@@@@ 9 @@@@@@ :@@@! @@=@@@ภXsy  ty  @W@@@;@@zz  {z  @@K@@@ภz  z  @@@@I%@@A%paramp@@@@@ A@@@`V@@(@@'2@@@@h^@@/@@.@@-D@*@p@@XC  C  @AA࣠@&self-1AఠSA@3@@@@  TA@@@@࣠@!fAC  C  @UA@@t3@@@!@@@@@@  @@.contains_callsAC  C  @VA@@|3@ @@@@@@@@డh"||D  D  @@@@@P@@@@O@@@N@@M@@L'%sequorBA@@@@@@^@@@@@@@H@@@@G@@@F@@E@@D3@7C@:@;@@@@ఐJ.contains_callsD  D  @ @@@@డDF(E  9)E  ;@C@@@@@@[@@@@ZC@@@Y@@X@@W+@@డ!>DE  5EE  6@@!a@@@@@0@@/@@.,%greaterthanBA@@@@@@ T@@@@k@@@4I@l@@@@k@@j@@i]@@డ%Array#getJK{E  |E  4A@%arrayJ!a@@@@@#intA@@@ @@@@/%array_safe_getBA @@@@)array.mlid::d:r@@-Stdlib__ArrayB@%$A@@"FJ@%@@@'@@@@&@@$@@#@@ఐ!f>E  @@@@k@3fun_num_stack_slotsE  E  0@33fun_num_stack_slotsq@@@j%arrayJk@@@i@@@h@@F3(fun_nameT@@@`@@@@A^  #^  4@@@3(fun_args#Reg!t@@@b@@@a@@A@A_ 5 9_ 5 O@@@3(fun_body-@@@c@@B#@A` P T` P j@@@33fun_codegen_options6&:.codegen_option@@@e@@@d@@C4@Aa k oa k @@@3'fun_dbgG!t@@@f@@D@@Ab  b  @@@3(fun_pollSa.poll_attribute@@@g@@EL@Ac  c  @@@_@Ad  d @@@e@@@@@1K@6K@3 @@@4E  25E  3@@@@@0K@8K@70@@@@1@@@EE  7FE  8@@J@9<@@@@@@@g@:J@tD@@డ\E  V]E  W@@@@@@@ZI@?@@@@>@@=@@<^@@డIJzE  <{E  UAA@@!J@K@@@M@@@@L@@J@@I}@@ఐ٠!fE  =@@@H@3fun_num_stack_slotsE  >E  Q@ݰ%@@#$@@@WK@\K@Y@@AE  SE  T@@'@@@VK@^K@]@@>=@@6@@@E  XE  Y@@`J@_@@J@@@@@f@`J@G@@Q @@@@@S@aI@e@@@@uD@!D@R@A@A@@@@@@l@@k@@j@@@@@@@u@@t@@s@@rD@n;@C  .@@N  N  @AA࣠@&self-1AఠѠ WA@3@@@@   XA@@@@࣠@!fA N   N  @ &YA@@3        @ @@!@@@@@@  @@@ఠ6contains_nontail_callsԠ (O   )O  @ ;ZA@@@@@G@@@@G@3 2 1 1 2 2 2 2 2@!-@$@%@@@డ#ref CO   DO  @@!a@@@@g@@f,%makemutableAA@@@ddd@@@@@@*-@@@@@(@@ภz gO   hO  @y@@@9H@5@@*@@?6@A@ nO  @ఠ.contains_callsՠ wP   xP  @ [A@@0c@@@G@@@@G@O@డ#ref P   P  @L@@@G@@@@@a@@ภ P   P  @@@@#H@n@@@@)o@A@ P  @ఠ+extra_space֠ Q   Q  @ \A@@i@@@G@@@@G@@డK#ref Q   Q  @@@@@@@@@@@@ Q   Q  @@@@@@%@A@ Q  @@Aఠ'analyzeנ R   R  "@ ]A@@@#intA@@@oG@@@@@G@ @@@G@@@@@3        @@@@@\U@V@W@@@࣠@"spA R  # R  %@ '^A@@+3        @7@2@,'@@H@@@H@@9@:@@@@@@!iA -R  & .R  '@ @_A@@:3 , + + , , , , ,@&G@@@@@@@@ డ BS * 4 CS * 5@@@@dG@pG@G@G@G@G@@ @@@@@@@3 R Q Q R R R R R@'3c@*@+@@@@ఐS"sp dS * 1 eS * 3@3@@z@@డ+- rS * 6 sS * 7@*@@@*3K@@@@@@&@@ఐנ+extra_space S * B@@@@@@@L@L@:@@  @@;@@/ @@ U@@@K@B@డ %":= S * T S * V@@Z!a@@@@m@$unitF@@@l@@k@@j*%setfield0BA]@@@@]^@@n@@@@v}J@@@@@@@@@@@@w@@ఐ(+extra_space S * H S * S@Ұ@@@@@K@K@@@ఐܠ"sp S * W S * Y@@@@@@@@@@J@K@@@ S * . @@ @ డ ce T [ n T [ p@b@@@@@@J@@@@@c@@@@@@@@@ఐ.contains_calls !T [ _ "T [ m@@@۠@@@K@K@@@డ SU 7T [  8T [ @R@@@@@@@ @@@R@@@@@@@@@డ    RT [ q ST [ r@ @@@  @@@ L@L@@@@@@ @@ఐ.contains_calls lT [ @f@@%@@@M@M@@@% @@ @@ ఐ$self T [  T [ @u@@ u1@n T [ @@@ \ R@@6@@ఐo!i T [  T [ @B@@E@$desc T [  T [ @3$descR@@@L t@@@D@@@ 3$next [@@@E@@A@AqK T XrK T j@@ |q@3#arg!t@@@G@@@F@@B@AL k oL k @@ r@3#res#!t@@@I@@@H@@C(@AM  M  @@ s@3#dbg4!t@@@J@@D4@AN  N  @@ t@3$live@#Set!t@@@KA@EB@AO  O  @@ u@@AJ 8 <J 8 S@@ p@\T@@ M@"@@sW@@ @@X@@L@ @@[@@@@@%J@@ఐ⠐!i U   U  @@@@$desc U   U  @s @@ @@@(@Ġ$Iend #V   $V  @;$Iend@@@@BG@AS  S  @@@ v@@@  @@ @@@-3 + * * + + + + +@@@@@ @@@.@@@ภ"() :V   ;V  @;  @@@N@@@@A@@A @@ @ @@G@Ġ#Iop MW   NW  @ Ġ,Istackoffset VW   WW  @;,Istackoffset @e@@@&@AFPO@A !v  "v #@@@ ,u@ఠ%deltaڠ kW   lW  @ ~`A@@@@@63 m l l m m m m m@@@@@@ tW   uW  @@ =@@@7@@@-@@ G@@@8 @@ J@@@9@@@ఐ'analyze X   X  @q@@@@@@@@3        @:+$@%@&@@@@డ "!+ X   X  @@@@@~@@@@}@@@|@@{@@z'%addintBAW@@@@W0++X0+,@@hn@@@@@@@@@@@@@@@@@@8@@ఐ"sp X   X  @@@E@@ఐt%delta X   X  @O@@=@@@M@M@Y@@ X   X  @@M@^@@ఐР!i X   X @@@m@$next X  X @X @@G@PG@]G@*G@G@G@L@@@@@@Ġ#Iop Y  Y@ Ġ-Itailcall_ind 'Y (Y@;-Itailcall_ind @@@DPO@A p') p'8@@@ l@@@  @@ @@@@@Ġ-Itailcall_imm :Y! ;Y.@;-Itailcall_imm @ @@@A@ADPO@A q9; q9`@@;@@$func@@ @@@ q9P q9^@@ m@@DA@@@@@ )@@@ iDA "n@@ ]Y/ ^Y0@@ @@@D@@@)@@ *@@@E@@ gY hY1@@ 0@@@F@@@Q@@ :@@@G@@ =@@@H@@@ภ? xY5 yY7@>@@@ @Ġ#Iop Z8> Z8A@ TĠ)Icall_ind Z8C Z8L@ A@@@@ Z@@@O$@Ġ)Icall_imm Z8O Z8X@ 2@ Z8Y Z8Z@@ 4@@@S4@@@ @@ n@@@T8@@ Z8B Z8[@@ t@@@U>@@@,@@ ~@@@VB@@ @@@WE@@@ డ E " [_~ [_@@@@y @@@L@@@@@ @@@@@@@b@@ఐ6contains_nontail_calls [_g [_}@ڰ@@@@@M@M@w@@ภ ְ [_ [_@ @@@+M@@@@@@@@L@@ఐ'analyze\\@@@@@@@@@@@ఐ"sp\\@@@,@@ఐ!i%\&\@ΰ@@1@$next,\-\@ @@)L@@@-@@6@U@@7@Ġ#Iop=]>]@ @B]C]@@ @@@\@@@ @@ @@@]@@ @@@^@@@ఐp'analyzeW^X^@?@@@o@gb@@@@@@ఐW"sph^i^@7@@~@@ఐM!iw^x^@ @@@$next~^^@հ @@yL@@@-@@@Ġ'Ireturn__@;'Ireturn ]@@@ABG@A TU   UU  @@@ _x@@@  @@ e@@@b)@@ h@@@c,@@@ภj__@i@@@4@Ġ+Iifthenelse``@;+Iifthenelse @ $test@@@Ni@@@Om@@@P@CABG@A V   V  B@@@ y@@``@@@@@j3@x@@@ఠ$ifso۠``@aA@@@@@k@ఠ%ifnotܠ``@bA@@@@@l@@@=`@@ @@@m"@@ @@@n%@@@ ఐ'analyzea a@@@@@ @@ @@ 3@6/@0@1)"@#@$@@@@ఐ"spaa@@@+@@ఐK$ifso"a#a@@@M@!@@)@@,"@ ఐL'analyze3a4a#@@@@K@C>@@@@4@@ఐ3"spDa$Ea&@@@ZA@@ఐl%ifnotQa'Ra,@I@@LM@P@@$@@[Q@ఐy'analyze`a.aa5@H@@@x@pk@@!@@ a@@ఐ`"spqa6ra8@@@@n@@ఐV!ia9a:@)@@}@$nexta;a?@ް @@L@)@@-@@@[@@@@@@Ġ'Iswitchb@Fb@M@;'Iswitch h@ؠ @@@R@@@Q Z@@@T@@@S@BBBG@A rW C E sW C o@@@ }z@@b@Nb@O@@@@@w@@@v3@j@@@ఠ(branchesݠb@Qb@Y@cA@@% ~@@@y@@@x@@@<b@Z@@ @@@z@@ @@@{@@@ డk%Array$iterc^fc^k@ c^lc^p@@@@!a@l$unitF@@@^@@]@@@@\ @@@[@@Z@@Y@st@@rS@&!@@@@ L@1@@@3@@2@ @@@0@@@/@@.@@-3@`Y@Z@[@@@@ఐK'analyze2c^r3c^y@@@@J@B=@@E@@D@@ఐ2"spCc^zDc^|@@@Y#@@Gc^qHc^}@@@TO@@L(@@ఐ(branchesUc^~Vc^@2@@YJ@@@?M@PM@N=@@v @@e@@@QL@>C@ఐ'analyzeoc^pc^@W@@@@z@@T@@SS@@ఐo"spc^c^@O@@`@@ఐe!ic^c^@8@@o@$nextc^c^@ @@L@\x@@-@@y@@@z@Ġ&Icatchdd@;&Icatch v@ (rec_flag@@@U @ @@@X@ o@@@Y@@W@@@V t@@@Z@CCBG@A X p r X p @@@{@@dd@@'@@@3@@@@ఠ(handlersޠdd@dA@@/@.@@@@ @@@@@@@@@ఠ$bodyߠdd@ eA@@ @@@*@@@Zd@@@@@/@@@@@2@@@ డ$List$iteree@ ee@@@@!a@$unitF@@@@@@$listK@@@@@@@@@@@(list.mli@@,Stdlib__ListU@*%@@@@@@@@5L@@FL@@@L@ -@@@ @@ @*@@@'@@@@@@@3[ZZ[[[[[@ @@oh@i@j@@@@࣠@%param*A@@ueve@@,3rqqrrrrr@@@@@ఠ'handler)ee@hA@@2 @@ee@@@@@;@@ @@ @@ఐ'analyzeee@@@@@@@&@@%3@@%P@@ @@@@ఐ"spee@{@@@@ఐ9'handleree@@@j@@%@@@ee@@@@@@@@M@1M@/R@@ఐ(handlersee@r@@@@@M@7M@3~@@ @@@@@8L@m@ ఐ'analyzef f@װ@@@@@@<@@;@@ఐ"spff@ϰ@@@@ఐ$body ff@@@M@C@@$@@@ఐ5'analyzeg#g*@@@@4@,'@@G@@F@@ఐ"sp-g+.g-@@@C@@ఐ!i<g.=g/@@@H@$nextCg0Dg4@ @@8L@O@@-@@M@[@@N@4@@O@Ġ%IexitUh5;Vh5@@;%Iexit$@d@@@[@ADBG@A Y  !Y  @@@+|@@fh5Agh5B@@@@@@@@@@9@@@@@<@@@@@@ภ>wh5Fxh5H@=@@@~@Ġ(ItrywithiIOiIW@ 7ఠ$bodyiIXiI\@fA@@ ?@@@=@ఠ'handleriI^iIe@gA@@ M@@@K@@@iIf@@q@@@P@@t@@@S@@@ ఐΠ'analyzejjrjjy@@@@@@@W@@V3@g6/@0@1)"@#@$@@@@డP.0jj~jj@-@@@@@@c@-@@@b,@@@a@@`@@_ @@ఐՠ"spjj{jj}@@@-@@ ఐ $selfjjjj@@@<@ܰjj@@V@@@nN@sN@rF@@jjzjj@@ N@mK@@ఐ$bodyjjjj@T@@M@tZ@@b@@ [@ ఐ ;'analyze"k#k@ @@@ :@ 2 -@@y@@xm@@ఐ ""sp3k4k@ @@ Iz@@ఐ'handler@kAk@@@5M@@@$@@ J@ఐ h'analyzeOlPl@ 7@@@ g@ _ Z@@@@@@ఐ O"sp`lal@ /@@ v@@ఐ E!iolpl@ @@ {@$nextvlwl@Ͱ @@ L@@@-@@ @[@@ @@@ @Ġ&Iraisemm@ ؠ@mm@@ @@@ ;@@@ @@`@@@ ?@@c@@@ B@@@ภemm@d@@@  J@@@AU  @@ s@@@ t@@@ u@ A@@ @  @@!@@!G@! @@@R  @@ ఐ Ҡ'analyzeoo@ @@@ @@@!@ q@@@! @@@!@@!@@!3@ @@@@@oo@@ @@@!H@!H@!@@ఐ ֠!foo@ @@v @(fun_bodyoo@  @@ @@@!H@!H@!.@@? @@ @@@!G@!4@ະ3p@@@r@@@3ih@@A@Ad@a3^]@@B@AY@V@Aq@n6contains_nontail_calls p p!@డРҰp$p%@ϰ@@@Ϡ@@@!F@!@@@!@@!\@@ఐ 6contains_nontail_calls/p;@ *@@@@@!G@!G@!p@@# @@q@5.frame_required@q=BAq=P@ ఐ O$selfMq=SNq=W@=@@=@8Rq=f@@@@@@!@@!@@ఐ Q!faq=gbq=h@ *@@@@డ(*oq=ipq=j@'@@@'G@!@@@!@@!@@ఐ .contains_callsq=x@ ~@@=@@@!H@!H@!@@  @@@@C @@/@0extra_stack_usedrzrz@డ$Y[rzrz@X@@@X@@@!F@!@@@!@@!@@ఐ +extra_spacerz@ @@q@@@!G@!G@!@@# @@@@@p rz@@Q@@@R@@@S @ [@@T @ A@  A@@@_]@@"@@" @@@@ge@@" @@"@@"D@" @N  @@@<ư[6B@?\@#@AAAA@"<@"A@"@@"?@">o@@"=@@@A@@@"4@@"3@A@A@@@@"7@@"6@@"5@Bװ@A@@@"9@@"8@@@@@@";@@":@AC @@r@o#@. ;@@AAAAAE@"C@"G@"F@"E@"D@@"B@@@@@@@@@@ܠ@@@3      @@@@A@+#@L @@@A@-#@O!;@@A @@@@@@@@@A@0;@@@A@@@@@@@A@@3/../////@;#@;@@@<#@=w@@?#@*A'@@@"d@@"c$A@@@@"T@@@"S@@"b@@"aA@* @@@"K@@@@"P@@@"O@@"`@@"_@@"^A@@@@"J@@"]@@"\@"[@"Z@"Y@"X@@"W@@@A@!@@"I@@"H@A7@A@&@"@@"N@@"M@@"L@B]@A@:6@@"R@@"Q@p@@n@@@"V@@"U@AC@@@#@}Az@@@"x@@"wwA@pm@@@"vj@@@"u@@"t@@"seA@}^@@@"m@Y@@@"r@@@"q@@"p@@"o@@"nTA@K@@@"l@@"k@@"j@"@"@"@"H@@"@@b@A@!@@"z@@"y@A@A@&@"@@"}@@"|@@"{@B@A@:6@@"@@"~@ð@@@@@"@@"@AC;@@@AASANACA3@"i@"h@"g@"f֠@@"e@@@@[@@@X@[@X;@@@AA@@@@"@@@"@@"@@"A@ @@@@"s@@@"@@"@@"@@"A@@@@"@@@"@@"@@" A@@@"@@"@@"@"@"@"@"@@"@@@@@@@@@@-StackframegenD@@@@@@@ H************************************************************************:A@@;A@L@ H @BMMABM@ H OCaml FCGC@ H LDMD3@ H Xavier Leroy, projet Cambium, INRIA Paris RE44SE4@ H XFYF@ H Copyright 2023 Institut National de Recherche en Informatique et ^G_G@ H en Automatique. dHeHg@ H jIhhkIh@ H All rights reserved. This file is distributed under the terms of pJqJ@ H the GNU Lesser General Public License version 2.1, with the vKwKN@ H special exception on linking described in the file LICENSE. |LOO}LO@ H MM@ H************************************************************************NN5@ ^ Compute the parameters needed for allocating and managing stack frames in the Emit phase. P77Q@ U Size of an exception handler block on the stack. To be provided for each target. ]EE^y@  Determine if an instruction performs a call that requires the return address to be saved in the stack frame, and a stack frame to be allocated. At a minimum, these instructions include all non-tail calls, both to OCaml functions or to C functions. For exception-raising constructs, we get better stack backtraces by treating them as non-tail calls, even if they are implemented as tail calls. This method can be overridden in [Stackframe] to implement target-specific behaviors. bn@ 4 caml_alloc*, caml_garbage_collection (incl. polls) sHNsH@; caml_ml_array_bound_error uu@ C caml_stash_backtrace; having a frame gives better stack backtrace x e kx e @ Determine if a function requires a stack frame to be allocated. This is the case if it contains calls, but also if it allocates variables on the stack. This method can be overridden in [Stackframe] to implement target-specific behaviors. |  A  @ 6 Analyze the body of a Mach function to determine - whether it contains non-tail-calls to OCaml functions - whether it requires allocating a stack frame and saving the return address - how much extra stack space is needed for exception handlers and for passing parameters to C function on stack. G [ [L  @@*./ocamlopt)-nostdlib"-I(./stdlib"-I1otherlibs/dynlink"-g0-strict-sequence*-principal(-absname"-w8+a-4-9-40-41-42-44-45-48+-warn-error"+a*-bin-annot/-strict-formats"-I'asmcomp"-I%utils"-I'parsing"-I&typing"-I(bytecomp"-I,file_formats"-I&lambda"-I*middle_end"-I2middle_end/closure"-I2middle_end/flambda"-I=middle_end/flambda/base_types"-I'asmcomp"-I&driver"-I(toplevel"-I%tools"-I'runtime"-I1otherlibs/dynlink"-I-otherlibs/str"-I4otherlibs/systhreads"-I.otherlibs/unix"-I8otherlibs/runtime_events2-function-sections"-c C/home/ci/builds/workspace/precheck/flambda/false/label/ocaml-alpine ?>3210/.-,+*)('&%$#"! @@07sȒNRRh3@@@$Arch0;:1-K^1ʹ*}(Asttypes0>n{T8cئ+Backend_var0G}afTd5Build_path_prefix_map0z HkGs8CamlinternalFormatBasics0%FU(Q/Tu0CamlinternalLazy0&͂7 Pˆ0r.SU߈#g*Cmi_format0c˯7͗ԩmݠ#Cmm0rhmsT4u%{*Data_types0I'Ue`wq]Ѡ)Debuginfo0PtJ=^w/#Env0zV L{YWI*Format_doc0]mWϓ:Mݠ%Ident0">WA+9*X,Identifiable0 {d\FX'`&Lambda0z1x]&ZT)Load_path0I@18 ~(Location0a7cK_H%9)Longident0s `7mɕcx0( C'~A̠$Misc0ob]6>Vê>+Outcometree0kX%d5Q/+)Parsetree0T鿁ۘ7Qu$Path0Y2kf֯J._Ϡ)Primitive0²~$xzT෠'Profile0E.8_~e#Reg0dfǝhO%Shape0oNՄBH0F? =pRѧҠ&Stdlib0Lku]8_٠+Stdlib__Arg0اp2/٠r)w-Stdlib__Array0?3$( Q&.Stdlib__Buffer08APF< t..Stdlib__Digest0l!LHgErζ .Stdlib__Domain0:M;׉<O$Ġ.Stdlib__Either0Vy`u~c à.Stdlib__Format0ܚ#G7m|/Stdlib__Hashtbl0ѱN][/!,Stdlib__Lazy0* -S$.)"0D.Stdlib__Lexing0e<.V ,Stdlib__List0MYm 7R+Stdlib__Map0L5xE|O0~,J-.Stdlib__Result06 ]/J+Stdlib__Seq0nwzG&amg+Stdlib__Set0\$;7 .Stdlib__String0s)Targetint0!2JTI ϝ.Type_immediacy0A^abOhՠ%Types0^Y~# )Unit_info0ڀh%((Warnings0mJɒkgr