Caml1999I036Q)Compilenv?imported_sets_of_closures_table~2Set_of_closures_id#Tbl!t&optionL3Simple_value_approx5function_declarations@@@i@@@j@@@k@8middle_end/compilenv.mli\<<]`@@%@@@%reset(packname&stringQ@@@l@@@m@ @@@n$unitF@@@o@@p@@q@%`&`@@IA@@1unit_id_from_name@@@@r%Ident!t@@@s@@t@:W@@o@3Corrupted_unit_infos@@@@@XZXy@@p@0Illegal_renamingt@@@@@@@@@@@z|z@@q@4Mismatching_for_packu@@@@@@@@@@@@@@@@@@@r@@@A@@@@@--@@@@n@A@ %Error##exnG@j@@@@@A&_none_@@A@(s@B@,report_error*Format_doc.format_printer@@@@@@@   <@@=t@@0report_error_doc'printer(@@@@@@@,==-=k@@Pu@@@c()Compilenv09aN3 ɸMꠠ(Warnings0;w.Q=1(Variable0*@wAà2Var_within_closure0/8S^a<)?)Unit_info08a AnMͼ %Types0#`O(ߍLF.Type_immediacy0GuQT@<=#Tag0H 0we` l&Symbol0!%%eEIm蠠%Subst09,+bmT-Stdlib__Uchar0d"W-x9.Stdlib__Domain0iW',P6wz.Stdlib__Digest0 Jjrڵ6.Stdlib__Buffer0_?K|/V>O}~Nࠠ&Stdlib0y{x!O!0Static_exception0=m 3Simple_value_approx0΍FU  t"%Shape0OĸT>b6Set_of_closures_origin05tQ]2Set_of_closures_id0fA*Projection0s&[\wIihIS S)Primitive0{mV|{J $Path09{ְZsv)Parsetree0Z<4$PC)Parameter0zo0:q۠+Outcometree0yl4>Yfܠ'Numbers0I3:+8Р0Mutable_variable0Ğ*5WB{y$Misc0  =73 Z )Longident0@#j,6.Nt蠠(Location0nݹV 2f-V )Load_path02&9Q҄;L,Linkage_name0"s_nظfS=&Lambda0 [, U(Z7Internal_variable_names08ߋA#99,Identifiable0XnAZ4eҠ%Ident0y43a$+*Freshening0%mma>V/*Format_doc0Mv9630A 'Flambda06>iz; 1+Export_info0nO! "W:,e)Export_id0F~=/M #Env0؞X:Fݗ))Debuginfo0.6硏]fSvi*Data_types0-k(.I70Compilation_unit0&G 0\jР*Cmx_format0le\cҠ*Cmi_format0KuEB젠.Closure_origin0$A2vJsf{#*Closure_id0\t#:Ն=Ġ/Closure_element0e G(^2Clambda_primitives0H_W— >y}UMܠ'Clambda0C=X'7ʳ3s0CamlinternalLazy0;x#5䢜hLm8CamlinternalFormatBasics0oZ2t,ݠ5Build_path_prefix_map0gMOBnM`+Backend_var0yyoR=@@=@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@A|V{@@3zyyzzzzz@w@A}@?imported_sets_of_closures_table\<@\<_@г2Set_of_closures_id#Tbl!t2Set_of_closures_id]`]`@ ]`]`@@]`]`@ @г &option]`]`@г3Simple_value_approx5function_declarations3Simple_value_approx]`d]`w@ ]`x]`@@@@@@ GŰ @@@"@@@ Iʰ@@@E@@@ Kϰ/@@@\<<2@@@@@4@@%reset``@б(packnameг&string``@@ @@@ L3@q!@A@@б@гĠ&string``@@ @@@ M@@г$unit ` `@@ @@@ N@@@@@ O!@@2x+@@@ P @@ Q)`@@ @`@@0A@@@@01unit_id_from_nameʠ*d+d@б@г&string5d6d@@ @@@ R376677777@I`@A@@г%Ident!t%IdentJdKd@ NdOd@@@@@@  @@@ @@ # @@@Zd @@kB@@@@#2current_unit_infosˠegfg@б@г$unitpgqg@@ @@@ 3rqqrrrrr@<Q@A@@г*unit_infosgg@@ @@@ @@@@@ @@@g @@C@@ @@1current_unit_name̠j48j4I@б@гI$unitj4Kj4O@@ @@@ 3@1F@A@@гu&stringj4Sj4Y@@ @@@ @@@@@ @@@j44 @@D@@ @@9current_unit_linkage_name٠nn@б@гy$unitnn@@ @@@ 3@1F@A@@г,Linkage_name!t,Linkage_namenn@ nn@@@@@@  @@@ @@ # @@@n @@E@@@@#,current_unitr = Ar = M@б@г$unit r = O r = S@@ @@@ 3        @<Q@A@@г0Compilation_unit!t0Compilation_unit r = W!r = g@ $r = h%r = i@@@@@@ 2 @@@ @@ 3# @@@0r = = @@AF@@@@#3current_unit_symbol;u  6symbol_in_current_unit F 8 < F 8 R@б@г۠&stringF 8 TF 8 Z@@ @@@ 3@Wn@A@@гޠ$bool$F 8 ^%F 8 b@@ @@@ @@@@@ @@@/F 8 8 @@@K@@ @@7is_predefined_exception:J  ;J  @б@г!t&SymbolIJ  JJ  @ MJ  NJ  @@@@@@ 3POOPPPPP@:O(@A @@г$bool]J  ^J  @@ @@@ @@@@@ @@@hJ   @@yL@@ @@/unit_for_globalsM % )tM % 8@б@г:!t%IdentM % :M % ?@ M % @M % A@@@@@@ 3@:X(@A @@г|!t0Compilation_unitM % EM % U@ M % VM % W@@@@@@  @@@@@ & @@@M % % @@M@@@@!1symbol_for_globalP t xP t @б@г|!t%IdentP t P t @ P t P t @@@@@@ 3@Ca(@A @@г&stringP t P t @@ @@@ @@@@@ @@@P t t @@N@@ @@2symbol_for_global'SS@б@г!t%IdentSS!@ S"S#@@@@@@ 3@:X(@A @@г!t&SymbolS'S-@ S.S/@@@@@@  @@@@@ & @@@%S @@6O@@@@!-global_approx0UKO1UK\@б@г!t%Ident?UK^@UKc@ CUKdDUKe@@@@@@ 3FEEFFFFF@Ca(@A @@г'Clambda3value_approximation'ClambdaYUKiZUKp@ ]UKq^UK@@@@@@/ @@@ @@0( @@@iUKK @@zT@@@@#1set_global_approxtXuX@б@г,3value_approximation'ClambdaXX@ XX@@@@@@13@Ec(@A @@г@$unitXX@@ @@@2@@@@@3@@@X @@U@@ @@=record_global_approx_toplevel[y}[y@б@гa$unit[y[y@@ @@@43@1O@A@@гp$unit[y[y@@ @@@5@@@@@6@@@[yy @@V@@ @@/set_export_info5__$@б@г+Export_info!t+Export_info_&_1@ _2_3@@@@@@3@<Q*@A @@г$unit_7_;@@ @@@@@@@@@@@ _ @@W@@ @@*approx_env6bb@б@г̠$unit#b$b@@ @@@3%$$%%%%%@1Q@A@@гJ!t+Export_info6b7b@ :b;b@@@@@@ @@@@@! @@@Fb @@WX@@@@!1approx_for_global7Qe#'Re#8@б@гB!t0Compilation_unit`e#:ae#J@ de#Kee#L@@@@@@3gffggggg@CX(@A @@гϠ&optionte#^ue#d@г!t+Export_infoe#Pe#[@ e#\e#]@@@@@@" @@@ @@@'@@@-@@*5 @@@e###@@Y@@%@@0.need_curry_fun8ii@б@г#intii@@ @@@3@Ig@A@@гe$unitii@@ @@@@@@@@@@@i @@Z@@ @@.need_apply_fun9jj@б@г#intjj@@ @@@3@1F@A@@г$unitjj @@ @@@@@@@@@@@j @@[@@ @@-need_send_fun:k k @б@гߠ#int k k  @@ @@@3@1F@A@@гŠ$unitk $k (@@ @@@@@@@@@@@'k   @@8\@@ @@0new_const_symbol;2o3o@б@г栐$unit=o>o@@ @@@3?>>?????@1F@A@@г&stringLoMo@@ @@@@@@@@@@@Wo @@h]@@ @@.closure_symbolNbpcp@б@г*Closure_id!t*Closure_idsptp@ wpxp@@@@@@b3zyyzzzzz@<Q*@A @@г2!t&Symbolpp@ pp@@@@@@c @@@@@d& @@@p @@^@@@@!.function_labelOtosto@б@гD!t*Closure_idtoto@ toto@@@@@@e3@Cc(@A @@г&stringtoto@@ @@@f@@@@@g@@@too @@_@@ @@7new_structured_constantPxx@б@г4ustructured_constant'Clambdayy@ yy$@@@@@@h3@:X(@A @@б&sharedг$boolz(1z(5@@ @@@i@@г٠&string{vx{v~@@ @@@j @@@@k#z(* @@@*@@l'2 @@@"x@@3`@@@@-4structured_constantsQ-|.|@б@г᠐$unit8}9}@@ @@@m3:99:::::@Fd@A@@г$listG}H}@г5preallocated_constant'ClambdaU}V}@ Y}Z}@@@@@@n" @@@ @@@p'@@@-@@q*0 @@@j|#@@{a@@%@@0:clear_structured_constantsRu~v~@б@г)$unit~~@@ @@@r3@I^@A@@г8$unit~~@@ @@@s@@@@@t@@@~ @@b@@ @@=structured_constant_of_symbolS@б@гv&string@@ @@@u3@1F@A@@г&option@F@гv4ustructured_constant'Clambda#*@ +?@@@@@@v" @@@ @@@x'@@@-@@y*0 @@@#@@c@@%@@05add_exported_constantTHLHa@б@г&stringHcHi@@ @@@z3@I^@A@@г$unit Hm Hq@@ @@@{@@@@@|@@@ HH @@ #d@@ @@A+4structured_constantsUA  @@;@@@A@@@@@ #@@@@ 4e@@@A@@@3 " ! ! " " " " "@)>@A @(snapshotV 0 1@б@г䠐$unit ; <@@ @@@}3 = < < = = = = =@("@A@@г,4structured_constants J K@@ @@@~@@@@@@@@ U @@ ff@@ @@)backtrackW `  a@б@гM4structured_constants k l+@@ @@@3 m l l m m m m m@1F@A@@г #$unit z/ {3@@ @@@@@@@@@@@  @@ g@@ @@.read_unit_infok PT Pb@б@г a&string Pd Pj@@ @@@3        @1F@A@@В@г *unit_infos Pn Px@@ @@@@@@гB&Digest!t P{ P@  P P@@@@@@+ @@@@ @ @@2% @@@8 @@5;@@@ PP@@ h@@@@;/write_unit_infol  @б@г *unit_infos  @@ @@@3        @Ti@A@@б@г Š&string  @@ @@@@@г $unit  @@ @@@@@@@@!@@@'@@$* @@@ @@ +i@@@@*.save_unit_infom % $ & 2@б@г &string 0 4 1 :@@ @@@3 2 1 1 2 2 2 2 2@CX@A@@г 蠐$unit ? > @ B@@ @@@@@@@@@@@ J   @@ [j@@ @@/cache_unit_infon U V@б@г c*unit_infos ` a@@ @@@3 b a a b b b b b@1F@A@@г $unit o p@@ @@@@@@@@@@@ z @@ k@@ @@.require_globalo nr n@б@гL!t%Ident n n@  n n@@@@@@3        @:O(@A @@г Q$unit n n@@ @@@@@@@@@@@ nn @@ l@@ @@1read_library_infop  @б@г &string  @@ @@@3        @1O@A@@г -library_infos  +@@ @@@@@@@@@@@  @@ m@@ @@A+%errorqB -2 -7@@;@@/Not_a_unit_infor @@@ @@ :> :W@@ o@3Corrupted_unit_infos @@@ @@ XZ Xy@@ p@0Illegal_renamingt @@@  @@@  @@@ @@ $z| %z@@ 6q@4Mismatching_for_packu @@@ @@@ @@@  @@@@@@@@ F G@@ Xr@@@A@@@@@ J--@@@@ [n@@#ZZS Q:M@R@г[&string Z:Q\@@b3 X W W X X X X X@}s;@@@A@@@@@@@@@Ab@@@@d@#`` eX\ fXo@Y@гb&string oXsc@@id@@@@f@#bb uz~ vz@Q@гd&string z z@@l&@@гi&string z z@@q0@@гn&string zo@@u9p@@@@r@#nn  @S@гp&string  @@xJ@@гu&string  @@}T@@гz&string  @@^@@г&option {@г&string  @@p@@@q@@@@@@A@@@3        @q@A@%ErrorvC  @# @@@@.@@A   @@ s@@г %error  @@3        @@A@@@@@@@,report_error    @г*Format_doc.format_printer*Format_doc  #  -@   .  <@@г*%error    "@@ @@@v3        @0LF@A@@@$ @@@x @@@ (  @@ 9t@@@@ 0report_error_doc 3=A 4=Q@г8'printer*Format_doc @=Y A=c@  D=d E=k@@г`%error O=S P=X@@ @@@y3 Q P P Q Q Q Q Q@7_0@A@@@" @@@{ @@@ ^==@@ ou@@@@ @  @  H@ A @  @  @  z@ s A@ : @ @@z@sL@E@@@^@W@@@~@wG@@@@@n@g@@9@@{@t5@.@@@A@{T@M&@@@g@`9@2@@A@B@@a@@3        @jc@A@ H************************************************************************ A@@ A@L@ H  BMM BM@ H OCaml  C C@ H  D D3@ H Xavier Leroy, projet Gallium, INRIA Rocquencourt  E44 E4@ H Pierre Chambart, OCamlPro  F F@ H Mark Shinwell and Leo White, Jane Street Europe  G G@ H  H Hg@ H Copyright 2010 Institut National de Recherche en Informatique et  Ihh Ih@ H en Automatique  J J@ H Copyright 2013--2016 OCamlPro SAS  K KN@ H Copyright 2014--2016 Jane Street Group LLC  LOO LO@ H  M M@ H All rights reserved. This file is distributed under the terms of  N N5@ H the GNU Lesser General Public License version 2.1, with the  O66 O6@ H special exception on linking described in the file LICENSE.  P P@ H  #Q $Q@ H************************************************************************ )R *Ri@ 0 Compilation environments for compilation units  /Tkk 0Tk@ CR-soon mshinwell: this is a bit ugly mshinwell: deferred CR, this has been addressed in the export info improvement feature.  5X 6[9;@. flambda-only  ;^ <^@ Reset the environment and record the name of the unit being compiled (arg). Optional argument is [-for-pack] prefix.  Aa Bb?@. flambda-only  Ge He@ . Return the infos for the unit being compiled  Mh Nh2@ D Return the name of the unit being compiled clambda-only  SkZb Tl@ M Return the linkage_name of the unit being compiled. flambda-only  Yo Zp ! ;@. flambda-only  _s j r `s j @. flambda-only  ev   fv  @ > Return the module separator used when building symbol names.  ky   ly  1@ W Return the escape prefix for hexadecimal escape sequences in symbol names.  q| M U r}  @ ; [make_symbol ~unitname:u None] returns the asm symbol that corresponds to the compilation unit [u] (default: the current unit). [make_symbol ~unitname:u (Some id)] returns the asm symbol that corresponds to symbol [id] in the compilation unit [u] (or the current unit).  w@   xD  6@ j Return true if the given asm symbol belongs to the current compilation unit, false otherwise.  }G c k ~H  @. flambda-only  K   K  #@. flambda-only  N X ` N X r@ Z Return the asm symbol that refers to the given global identifier flambda-only  Q   R @. flambda-only  T08 T0J@ R Return the approximation for the given global identifier clambda-only  V W@ M Record the approximation of the unit being compiled clambda-only  Y' Z^x@ Z Record the current approximation for the current toplevel phrase clambda-only  \ ]@ K Record the information of the unit being compiled flambda-only  `<D ay@ \ Returns all the information loaded from external compilation units flambda-only  c d"@ W Loads the exported information declaring the compilation_unit flambda-only  fem g@ m Record the need of a currying (resp. application, message sending) function with the given arity  l)1 mf@ j Symbol of a function if the function is closed (statically allocated) flambda-only  q sTn@ @ linkage name of the code of a function flambda-only  u v@ 8 can be shared with another structurally equal constant  z(9 z(u@. clambda-only  rz r@. clambda-only   @. clambda-only   @. clambda-only  4< 4N@ ( Read infos and MD5 from a [.cmx] file.   @ ( Save the given infos in the given file   @ 7 Save the infos for the current unit in the given file  CK C@ Enter the given infos in the cache. The infos will be honored by [symbol_for_global] and [global_approx] without looking at the corresponding .cmx file. /l@ ] Enforce a link dependency of the current compilation unit to the required module @@-./boot/ocamlc)-nostdlib"-I&./boot*-use-prims2runtime/primitives"-g0-strict-sequence*-principal(-absname"-w8+a-4-9-40-41-42-44-45-48+-warn-error"+a*-bin-annot/-strict-formats"-I*middle_end"-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_events"-cDE J/home/ci-ocaml/builds64/workspace/main/flambda/false/label/ocaml-ppc-64-be >10/.-,+*)('&%$#"! @@0CYKp#c$A3_^^_____@\@@/Allocated_const0$' Y`E&(Asttypes0E\eǥ]k6e+Backend_var0yyoR=y}UMܠ/Closure_element0e G(^*Closure_id0\t#:Ն=Ġ.Closure_origin0$A2vJsf{#*Cmi_format0KuEB젠0le\cҠ0Compilation_unit0&G 0\jР09aN3 ɸMꠠ*Data_types0-k(.I7)Debuginfo0.6硏]fSvi#Env0؞X:Fݗ))Export_id0F~=/M +Export_info0nO! "W:,e'Flambda06>iz; 1*Format_doc0Mv9630A *Freshening0%mma>V/%Ident0y43a$+,Identifiable0XnAZ4eҠ7Internal_variable_names08ߋA#99&Lambda0 [, U(Z,Linkage_name0"s_nظfS=)Load_path02&9Q҄;L(Location0nݹV 2f-V )Longident0@#j,6.Nt蠠$Misc0  =73 Z 0Mutable_variable0Ğ*5WB{y'Numbers0I3:+8Р+Outcometree0yl4>Yfܠ)Parameter0zo0:q۠)Parsetree0Z<4$PC$Path09{ְZsv)Primitive0{mV|{J *Projection0s&[\wIihIS S2Set_of_closures_id0fA6Set_of_closures_origin05tQ]%Shape0OĸT>b3Simple_value_approx0΍FU  t"0Static_exception0=m &Stdlib0y{x!O!.Stdlib__Buffer0_?K|/V>O}~Nࠠ.Stdlib__Digest0 Jjrڵ6.Stdlib__Domain0iW',P6wz.Stdlib__Either0FԤ) 4'>.Stdlib__Format0)n[-Ob/Stdlib__Hashtbl0^iaxG$+-Stdlib__Int640oTV/,Stdlib__Lazy0OM>x9 j  @ד@    ٰ Z @@@l@t"@Y@w@@  @3_6z  а  5  @ɰϐN O@V@@P@@