DELTA 303239 42 27 SVN;FQ@ & X/Ol&x^U˒8Wr04$hb,"==N ݱE#?1f&9g#-$I A%"(tQAnJmmg>`А9XA"'d ]A`sثT{/ؾ, ԇ77+,nx{/?j0iH<ˑ"8 qŲUi, <R8ԟX!+I7YU; \ꀵ= z'ViJEr2G{YN3đ'0cI@if4~œܨ0U*2P.7-6vriգu~γLW*$X**  bM= ^_Ґ/^%'d%8C#\ +&oqDMR^ՇH:WfxoM+( äu!akkcUh{{NR>kX"w^N@ۿGpPwSӷ%t.5 5 ti&DڜzD+tnΕ޽6'qucXDf8ǤH|K ձ'g\]ˆĞ5sa`[}Za35zIcu`Fc.<׍x&̛J lXkxr*kXJ`,9Y⦩ %ڜټ'f͎.l^n9&d'yN3TzA⸼կ#։˴o[W0%>i*gTnVwO[ci=zfu%l< & GZC;U>qcJENDREP DELTA 309434 0 35 SVNDP, G4i2]*if(NOT LLD_BUILT_STANDALONE) set(tablegen_deps intrinsics_gen) endif(tringsDebugInfoCodeView DebugInfoMSF DebugInfoPDB LTO LibDriver Object MC MCDisassembler Target Option Support LINK_LIBS lldCore ${PTHREAD_LIB} DEPENDS COFFOptionsTableGen ${tablegen_deps} ) ENDREP DELTA 303239 185 102 SVNC(?@>~N>!xe`>wh#k6pTOJ%x^R]o@|WlPԜJQ!H" QUGt{$Q5=(vR?ݎgfƾCwAnMhpHǕ}{?V^@#It a9:q`hDaꅑ-OWj)p `9Q=x<'hlMJ7(1Ir 9_x⌚ͻZUjBX;`5(M jϞhݪm_E4ƝJH锕u?BܣUEY\-Y\w8/E2npJSp;J+tFxgE&ǩZ93YPWe xIrg4G5$;3lSDU͗qy\ngt _#ڕfh?LQdENDREP DELTA 303239 314 100 SVNa$Tuf_|e?d}~ const coff_section *Header; private: // A file this chunk was created from. ObjectFile *File; uint32_t Color[2] = {0, 0ENDREP DELTA 303239 442 170 SVNu)8E7Pl_TT /#P[SX) e D\Cstruct Symbol; class SymbolBodySymbolBodyenum class DebugType { None = 0x0, CV = 0x1, /// CodeView PData = 0x2, /// Procedure Data Fixup = 0x4, /// Relocation TableSymbolBody unsigned DebugTypes = static_cast(DebugType::None); StringRef PDBPathSymbolBodySymbolBody *DelayLoadHelper = nullptr; // Used for SafeSEH. Symbol *SEHTable = nullptr; Symbol // This is for debugging. bool DebugPdb = false; bool DumpPdbENDREP DELTA 303239 640 28 SVNqi  72?ENDREP DELTA 303239 696 614 SVNQ+WY^pw^wmf-XzUp|MV1UF w;sx T jKT6&wQ!sZ\#\q7H~^3 ~~.sw0z5b4 E}#- # mTt~XX^{c x^Zms_Sfr&-['ڎ3"!5I0y !JܤS͜O$/X袈?_u;_YT`ݱreQUW$N|?,geg W_ŋH,X0wc6\TeUD.H1X[ȂAZ@"/c:̌z^mY% y IaیGtT E\"i+Fl`pgP'\ʄ%q_߉00/pYT=[1cvR$*8qN,c)(; s +UjE<}$%ϐf.XDĸbJr 4B V ƙV#O/U1 F 93bB3&@(0 eLJ T 3(@yUk*S %R( 8 CӸBɪcElFF1Ou Ae : 9!}JyY 5ϫׄ @xz&nLɉЬH)yJ@Mar@v8Bm /]Va[X0eHr@d׏`v|/A}4^g<* }{;P.A$AK,xɓĺA9l{gG? _y>=:^pu;q#3ZQ٥{Nu|s1x ?wG`9m~ 7àpV0֏ tb$ޖx J ܸ~RvwvѦD<繧_%q(?c7J=SqK+(gO -Ҧ4tm%s;g0uMͥf7`jvcx2MNw#0`1 +`܃B2o) *} eL"B4 ,] Pjn>KHn"[Noԏvu$ӗm|hݩ˱xl_D͉*=á4Pi' _Bt2xu4IFyPae:.9rZUENDREP DELTA 303239 1338 50 SVN%UC ( kzEx^TMo@+Fa) wH1Ov:na녥aɊ;GR}ofޛQ4F{& R:p#婉VhYZ&OVy +ci]4$z+S_0gdFG+M5+(^TUOƲ>J AFk!l8t 6jsOyOJido{4,Uk!ZH '~?2 2ܑfћ6fHhrJXAGomصNN(o/JJi$KC tXr2*70}R3WtU˶[xY-5rL-eO1RvI:k[$9f*ז~|S <(];Ngc>q2O5) Wc.9`F9]"1 0m qi/73ltENDREP DELTA 303239 1419 1505 SVN6*1/g%*>PsiMsOuj}Z #j7,{T-}G*{_N^xxv, |R:^=<deD\+EQPf x^Wmo6_q@Ne-p^uu2`Z6Tl~HIlC-HY{#kfjYa&,y왛g4)s,v)4K}PSw@nBqYD+ yd~1P 5:_\c(7$Ey§zєY9 )gΔ".mIJ`g/h.ëc ڱCwK?^}8+ٵ3R9O䋍::=<5?YNZޣ07b3gFaСcL%Ly B9 aʷ *96,!C"V83'& 634rng,ᘷ~[I䷝Y1"J4ſ\EVo Jst!,yƫڒ0`*g`oHwum^J ˓04l)뚹G:Cvomgbwj *"B.U)R$[Fu¨|yp;C0A|Z^G`Rd73a7:+]jLo$/*qB+H5vWr \^PT, jY<XlL9te# j] /ZʪPLy+*sS|m %h>Q拺0h%/~LE B13xgUB$$:^ Y1p5hMT[p>}χ u=}=6:?Z:V9BFeےbig rfAXZebRPµ:_Ӵim-fT+LXa¢aLN)^]Y؁u?2nqnjCI^*\gT­mJ붏4 $?og\ROۢuT` %_DD3>cc:h_ smp(Kouݫ$KA;pZgP0]Ywtp{D]͋$rө1GsUxz_ Vԭsߨ& #endif using namespace llvm; namespace lld { namespace coff { void fatal(const Twine &Msg) { if (sys::Process::StandardErrHasColors()) { errs().changeColor(raw_ostream::RED, /*bold=*/true); errs() << "error: "; errs().resetColor(); } else { errs() << "error: "; } errs() << Msg << "\n"; outs().flush(); errs().flush(); _ENDREP DELTA 303239 3273 293 SVN d A Z?K>?template T check(ErrorOr EO) { if (!EO) fatal(EO.getError().message()); return std::move(*EO); } template T check(Expected E) { if (!E) { std::string Buf; llvm::raw_string_ostream OS(Buf); logAllUnhandledErrors(E.takeError(), OS, ""); OS.flush(); fatal(Buf); }ENDREP DELTA 303239 3596 62 SVN/C[8ZSXVv3j*z1A^Q g"C*Kl7 <[ *x^Xmo6_qͰ@nl7^>ıq6M;E! Zmn2ISݑemF_$x+5U@17aHmU,RD¥Ig0(O &jV 4޼ŜB3 \\B.E6:]A!cb+ µibDY:l.Ljx|^B,$F[i,J /ufhMNNOYfrVVLr+Yg\Δncȵ(YhKB-?"lSسZ>G)B>\_+JQי?bmR Gbc y>>7NDzg"Ljkg@,Oe!OI}O} w=86a ; Aa70 k*> lG |9zئ"p-3)Hʗ)zY"5Ն9 "-%ȸpԈlj̔ҡ`3~ƬSj&Xz0hǫv?[kF+K80~B %j0:ix7^}}!~U _]} }V-{ӫp*ưTY-8#'(Xd D)*Wu1|}3hsGL j]%rxjށ? ld39`#:(JɈsx]2U9kt@ aQy!`aE ]U19|vT=C<-8C!=VPJ >9uUG9]j8 (1CH SׅQ3m6DTF MoyM36z]T8׷hMKf"nr,35&1G7yccUscq,0j ļ/NGB@(s\|eHHs,3MM _z%$y+tPAޛ *`dD\֛qǽ}0Q6:zpqlI  u^K w|ٰ>{lwHRe{pgQfDBZ"q婗m%r-l,%gTk>t !/ x߇Fvn T«NQ(˩EM_]/uإ}R`Ezp j7/Wr1n5Se, tGk9kX`2Պ9F=1pV D"Ө5JUn8?wD'5F.26v=bwVfެ4k!6z#w-1#k~c8$ 'QAs^hhw(lޏ{r $8]k:֧As=c|NsDYT ΁ ERn[8TwGb~7D@MRkKbrfo=LX5:P 37~73 6xԳ p[wۃ+c3Uqj 3F.;䝭jծ!sR;Iw#"fv*jUJ:-3%&11j4+a5` @wʔ<: ~ğYQfJK; _5}pg=ZFK;~<%~{+U+P!gUrycJrEӤ 2E+6g 9)gP W/cyF (4pRiRW7m(< {WЁ?!p9L >?! $f>. VENDREP DELTA 303239 3689 1287 SVN[*(W3^1K\Ws}uwht>}nss1k1A8j20)js--;[VC5] $@M{ K3\G,@t`F_ )ox^VQo8 ~rK5Ф+uu{8 ŦvHv@ȏGRWnܥ,N7FMeZr/0;1@t6}r[tIJ|mxY>Vt4HNwvkVȖRmE+D; BHlV?EkD9*'mw(j` Ak oe:Gl Iɹ6 ,yShnfp-n)U>Qe{ ka,ƴG^C‚P MHL36=tf̠poI6&@'VT{ @$"td]c S$ZSR5YV`=AI,T*ŋb#(,8IIe_&ORT4`#$%m(1܆#Da.0b6W̜B%/緗YTmz "gONOL'Vmi+6*IMaέB)[5fRdU%0A#;U;t o _(#p34̕Rg›&d}gKt8pУ> 'Ե6nʽܒy٩ac/& $Y2l´W-Wk 4g@΀[ r^oSgj0>IGSw2T D/sɱt.##aB`&.S*CT>M) 1P)j=r gg?~W yGQ7vsT!%!eŸf 9ZV,?{N˹Is\[?jn2H\7i/p"j$uG2> "U FAŷ 1"s ! vτuw*B* R ;-n%c,"wq? {bjiCّ牌`khwL= f,\!Cn*K!G08gSiYջo6e?I&a^Qa؄|1':RGͷhUnCENDREP DELTA 303239 5004 194 SVN%g4fUMB !FUHUy^i1p2U!bYE{@IA{LGk9|2N7x^eSMo0 W&A^@ZͰkXt,TE"GKf+]Yg2%I?{dyu[mEL. q"a4prN[!t^x{gaا_^o/;R0(aӈi"6#Z_*Bo_>_?{`/!>)ktHNه^l^jupaCSgMspZM: cIvENDREP DELTA 303239 5229 3777 SVN8687<;E`:V^b[K'5t /x^R]k0}W܁Єumqm E_G {X9{97dVZ0$S^@mCi"߂\Nۅʥ藱}bXBTdT"qT `;$傥3~ 'w MĜ/S\oyOY-H -Dw<.}4QcGOqz]r4ʲO+gCzo[&4KžsENDREP DELTA 292934 39830 867 SVNaRML_eLLSymbolBody *B : Config->GCRoot) if (auto *D = dyn_cast(BENDREP DELTA SVNXRXXx^TQo0~8R{& RZd 1GcdtQtɒM|΄p8 lv\`|u4Fa4tyStJZȥB9fP 8 kFc@ÝRR|_f- ܍'I~I!/ dT6؂6z;ކ;I ;9钓7b6?|]|`dOPΔZaRWUi\8Rܕ&X'zDŽSk3yA ^Ed`͡EuQ}r ,>cpT(d.Ev-[=^N[ǵ@T]-\{t⎤[ i 2ztJRH* ^ Ҟ>.Nn_1 ]=9 6,`cHO1̣[n2xj-'z*Kl0|"ɘԪiV (N٣(zϚVҋ;~ vb3}ENDREP DELTA 303239 9019 359 SVNc(! jY\XapEXi*9Memory) : Lex(SSaver.Saver.}; } // anonymous namespace void parseModuleDefs(MemoryBufferRef MB) { Parser(MB.getBuffer()).parse(); ENDREP DELTA 303239 9409 102 SVNt2c PN!pwpmalinkrepro : P<"linkrepro", "Dump linker invocation and input files for debuggingebugtype : P<"debugtype", "Debug Info Options">; def dll : F<"dll">, HelpText<"Create a DLL">; def driver : P<"driver", "Generate a Windows NT Kernel Mode Driverdebugpdb : F<"debugpdb">; def dumppdb : Joined<["/", "-"], "dumppdb">; def lldmap : F<"lldmap">; def lldmap_fileENDREP DELTA 303239 9542 93 SVNckWeI|Y>x^X[sF~WҎG8Ӧ`3cNcPe[KZrJ3={a4[se={vg{ahۛ<~vXu}m,/-¥ㆤici>G q,Xf>YQ򽯈'ymB[[N<%N&)sGpE_O{#Tأ>F8AFE~|PN{ erJ"ݿm"O4Ȃ@q$<% %ğ4;tWXZyF5ND?lZ <M[Q8g֘+eʸé(enWyg@H3,' a8Q8[,2`M,Fse 8тWx 6 @}?BJA2!wƏ+SekjU/ɳͣxOy?LTGM/L>pob ,Ӏ: Zk @pUyJht^ZuZqҒMa_aSʛ4uU`e$e.-X"/\V:/tA(Lu/˶0'|ͬ7ʔ @`H=b]v0=3*}Bs:$yD i4q`0:-<#ثcCj '*12o"m/SLMmĎy0zW8KҋÐ~o8^TS5,بtzXjj'+颜ukA{N7EU^F#!.i"!`h">1,š_HcSN}K!i8Hܜ5$)s4 =ѠR8]>΢$\b׉6d>ĥ֕oCu)AՇ/W.ZWqP8Ҭ>^MXQ˔60̛5(>;lG)Wu1!$_ByQ\'vSjGրݣKwNb,M5(+01 ;f׶ݫVц)-Fe/naTYPBKInc>/4~BLeT;FMU<*ښY[VT5;Kf{xSGXQn\8fENDREP DELTA SVNm?mmx^QYK1~ϯ*j,T[U|[ II"wR 9o`0r|T0j,)?M a>o菈6d벎(=D=YAt܂S03F[Gŋ5Z\Z @g6,!]0@4"ue%B>CJ͑Co@]:6@+6W-$R"} d!hd2[Y=e` 99Ր kez:[%[SCTJh\ U4ۖj]XNZZ)+ۼ@p۷`)?UhȖ7r8<닾@_w9jlȪ ENDREP DELTA 303239 9729 566 SVN0UuitWofQl+-BcI,EMS5KG3\O;b!M}d1iu(m^^YfJJx^Z[o~ϯuENɥ݇"%:V#H%wlvbFLgpfHfODv&:[J8+ȧ]slXhX:sQ,cc-Gkq?om=4ogIrf<R_K!N!0CAй,I;/%ƪ_A?}\C{т!"8g,r%_;KsǕ7EM v޽p~tq|{sߋˏ?"D gk(z9Vf8SX:}[r޸k |:,TWmH V*Ce~3F(O#'doQ_F+>aZXad+/2M`\E97d'q=yI+>gioOтl2 mMZ_TܛG{HH+~Wf-|h)R&1'K_d,ݢfL|'-#`܎sV.rS@7zp=K%Ĭ$,| eMyQhYcrE+p \*†$珖#GcwQjnR$K$[K'.5WtZ9 IM՜&\s_rЊ,H8D`f)s IO'1*3)r+3,gz Ifh]2B'ŢOФRgQ u&6v`pyXzr:% .vk c qR*Fh u/RT%P/ýѥ+6Dj,(T5v/}>ˑe&Er.؜2f0+{?;zyVWpt|Hjxma4${IyM6dZ31'KGЯ*JVͲED}(mu#7i43$@ 4HWU!5Hy lPCR}xzjଉ%Ut7 L:8I FbYԬXU)&$fKu;dw ){&g՚@h/67pS{iEvsv-q{CZ" ؝<3U#iUEI2Nؕ ~]Lˇ #!ܦDŽM|dr~R)]*Dou8mʺGEmeCqd Ct ?c}O˒~fl f僱2:Eip?H҅tN3^Qy*h㦿MKjrpy><4+;E[q¶@u\]7W^7I#KoMV-mP2vQSb>yێђPt3YI-ncȼF? Sn|QyZ *>> )%>co#zQx!;-KVy+|ybk]r-Z_^!TiWܟh߭՝Z=%4߁ÐZO 9CdlX.d$lm Br}_GJ9ҏ|qq  ,8^zo`8JCWhENDREP DELTA 303239 10326 29 SVN\;c:9"b&hgx]*u}M{ 3Rx2k6x^Tn0W̑PJUiHmRlpc0&wIa1ü73`69#˻. ]n?[d ˒uZjG:ygӯw9ّ''B,#e,4*EdYRئͨXǞ6'H u ئHTtܫiC*_N̒AK.\t+,ق3|9Ӏ`peu)B b,PWyɃ_1`i#몉} k8 d-yk*P xǽ~C6nۧmv֢z;D=\c:$y1,w_Wz 0E%HbH57hr: 2.$]M~eHZn O,7stuρg"*y[iiѡAUteЭ|6x.f+?o7lO|W10xedⳋ~R:9q5=g"P(Z'BiT|Y2ɀLx[b|6QfpR"I6+Su~WoCL9vENDREP DELTA 303239 10386 73 SVN. ('WZ1V~4pZer,Sx^R]K0}ﯸTFq>(C9p> Hޭ4)P{Sn~K䞴ZNGʤcY&n\J@=JfK)ռyK(QE CŹa`+m0y[0a3Hw!䍺̈́uJxUĔv䕸qWWa +&{]0N|+=~)=<;?JQLxxvAbJÉI"/[,-s^]lQ lۀ)0 jsD۶Wk1+"@FPsJ0P麄,oiƴЙ:b!ۄd[W]ENDREP DELTA 303239 10490 22 SVN`\on61(I ] I}I`si?N]\Cw.gY)O}G\~ }4S1/[=깡M/uW)Y70g*~: T[`yIt4"tY N;Ԥsd&VT܊謹(p-3 *2`]oPbr`;J>ᑈ|"~m l`\HrHQ7neKGSr'77X_\i^F'#p3rG85E s./:w_<Ӹ$;|lhN?Y];OZFE=-dͱO"{K"y:D5ŏSNJQoE訍  ]4I+P! J l_3-2#@4&YIm)faǫ,cA=|h}0Gqc̴M&uDZ:&4q)a; &@d2 G["zK!)'l G+4i+0&فt/aB:76E\jIÈ_ [FgBHQPH64ݫЭ)Ӱ7p"YUfLd 4c!'@OM 3 2q AKMoK ?70kA.7 0BSU]z \O4Au754 m5% ECEM !4R1ѣد2ET twa@X[QzM0VSM3>l x}+8/^?$ޜ& CCnĔqK,z&_kB{YD V/WάOOsٔC5ɑc$HI(cKiE-W{Y|AQROd"4(s72vUe*2 }vhbDpCUT§\??֜{OF%5iB^AW7 FEZh״|]u w<NO>+{Oʨ3;R~Fl0/!0tiN">A^JK*b//T:ԩ 'Y!_@Z< D#$ U_K ${ uW ֊{Ec/d2 )^#-%)ZҸ3L&4k66!ǐbIZ ZP:ݣN&)JH߁0ZcFs1,b: E^-zQ~~x/ӰlENDREP DELTA 303239 10543 893 SVN>S|QW)[qG&+7pWTWLg zFe=q59RUr$bS,Vc]P| <)g zxyu<: c00tJcfx^W[oH~WLY)k@SLj)`R5JUu#4co;3&F{blٶCb\󝋿0*mڭ_hGy@P{&!]׼ #҃{$[^_!qv7/U*"M| ?w$! GsU(#=M#e*>ү-PqO.lzWN`W뢳 2A3,FO-XhM-8KXz>@I. HdYI S(_JHlcṵP.~;1  3e 8tES[]F`i8yq7FKo4n9:-oT.`MB05Ar:|<9O g@bCP0D<-%_:?'M- &3ա鷞@ΜB%98?jCb? ȖQI@1]Z]o0bSp,oVkC$@mȁuZUN.}Q5qy`moܔM ~/$17\AX_pUAoER?ڕԟ6 x:X2xc0zv6gbgE%Ig;kzql:F[8j<΅y$" z5;iy"D] iǏdZ%ӐecOTû ]dSu$~\|FHupAO/ ߓ+LmҲͲ16P8b5uݏqL]^pGI8XòۇJF+KC:Vz(Ǝ#}\]5LU]A1  5Lk}قg@$+!UX :OD)T`^HR]1\j*8oZ1Ta"h ̍*$j8ř܎#U,z/iz&={ƿ~nRAp.4A*ZA_aF{_vX:#zד.LItDcN+ºB$rhWA҄[`ڐNd,,'!uTѕR+s,jBLYQ+]yҷQGK,j |NXARD|s!ۇkw]ˬH뺫4z\?(Fo< ׻^2̃ NqQoSjU.u k!ֻׅޅ wDK JF8.3w].8( J==+Fy" !iա:@DQ3v b(J8y Ur@YO%j8佖IBKE UH.J ʳ"}ux? w(:|ώf:"{yXGys ~-E󢖗MRU:!z8 YÂddaĴJڲfˈWK039Ft Ryd캚@E10jL%Bч:T+^81|5+_Ik߮a2,j5O GPubJ9aNES3ceT7BM ‡:LENDREP DELTA 292934 69605 300 SVN y 62Wclass SymbolTableENDREP DELTA 303239 11465 343 SVN{ U-)v6Pif(NOT LLD_BUILT_STANDALONE) set(tablegen_deps intrinsics_gen) endif() add_lld_library(lldELF Driver.cpp DriverUtils.cpp EhFrame.cpp Error.cpp GdbIndex.cpp ICF.cpp InputFiles.cpp InputSection.cpp LTO.cpp LinkerScript.cpp MarkLive.cpp MipsTable.cpp Symbols.cpp SyntheticSectionDebugInfoDWARF DemangllldCore ${PTHREAD_LIB} DEPENDS ELFOptionsTableGen ${tablegen_deps} ) ENDREP DELTA 303239 11836 927 SVN%J4IOU<=OEjM_rb1zm1 }mZv?j+*x^Un6}Wq& [`9 %RJRYACI/ufp8639h@)(~=Ud,Zv `ll­ \h/{[@ޮZ6F ^ 6P8qG5,(`Tկ@F$CcK ʾ."o=#g* w=&{T^bMQJc48ԪH&$1%)$(Ue^o SXݡqo*!ƥI@.cQ$1)_0:n rkc%ށQy`>Qs/PoMG׷Y*p9/4֍}f2w=OZd st電e9(Y+́N fم[e6_i.]ВԶBᖝ@H-{a4;nWsj?K#C~[vhFe;Rr ab-?Fq}f_-%n :M 0-|~Om u0i w\I/I}HSPD~cn>g'I>rIhQ?E+g |$ KqwλE<knwA݀h?C9KޙTcB p1p:;Hysde C?}ɋY\ejXh:J,'dcӌp-9߯>yXYz^@q΢nd#!G*cSTENDREP DELTA 303239 12789 4515 SVNQ~oSK8Mj!% CVYu t$`3FMD+^*As]tc} ;tyFj]Q8 ,xY7-J9׀(kQ=|{lbBxaDNEf`~''cn|Ol䁶f V9<\gWG}GKDJC\ }<p^f6` v+NU0q\NukFGI,eQ(T+oqr U@xGQ^k )*e@Z_O, eT>8b6SY\e~y1:Rg\$MBoWr4V_ Ҽc!tXfgApjheC{<$19hG/_B/UˈA vȨQxz'T&* [;`9p^>1[B9Ģs R=Qc FWح @:*j&(s%/! *E)п NEXT7U{F R\% hrp`0nG+M1DT4❥Zr9y>2gqh0\V#t|'#R@Tlp}jD+|?&Dg(٘ѮyrFf䙴H΅i1QSY@tDR-DZ<7Pq3AN)V9TBD;ϐ4*J[#]ZHzNSp0ۍAJ<,>͈P9O,@Efw9^K "cұ@6("e:{XRBe3q8Q*2{ A)QiL'Li2 uĿ-V:m t~~lb?4NCخ:ml"(^k:A7{x7-(?rWޗ*:2fIXL%`C>L lxJ d(Xo/K bօzJJUջB%ARpAuZ*Ml# ;WI+v x&Nu f/SWzItkɉyfhbڋI{$r^Ԗv<Zv,rŧ'8Y:rJz.M^Pnwb-<+qXjmLee6;!d9Q!_v~ۑAc _;r#ӱ6Sec-MDh O!gV.t"ҊLs,ԕ@$Q-F:wspOqHEIO ZI1%LWhZ搬~iMR`(|Gt*jUnŷm%@嶱YsrzJ 2S/iv.kC LثpE nGS2//L>mp\+R8I$5nqP+24NiSI#^[oe"u>mꡬfo#&5 6h1 R)UZ#(!G^|a{^FUdOl}qrADqt2 yvm'}LGiu,"+FƚH۸ )DF,_YbuZX 2+_3~Y:]j٥x%GjV)V;eR*/ }z3h`65>։DաlVk`2GH!bN՗=~!cA +RME1FIfpra y8 4}J@#=Y۩ 9\N8рҊ-TWȸD8ZD771f 'K4urN ,1jNj!!B X.xAn\3 j@ZTvi 5(B,%Fc| ^Zd)f1Fj3s4} ,Zo9Rk삥0z L|nd YyMuxsu" /:I i7^_Ä;i 6 ^:CMO(wPDR*Eq׸*=>_IKP91" yQ/pmSx^e ͮkY^Cᓫ:"V5z睇'|S(g8dDu%csv"w*E %gS|z !~8I.?j._f˳8]tw+F{Y$j ~Pi/(Yv@ ,*K T =dT]9fR$? ce\b,ܞnV2zQ Pq Thfxjsܫr~6ԲrP#)D7YpcrP W?-']%B5y=?( ĊYGdߌ _E;YkwVY#BH 64~\8p8vQUAFY<lR .i՗J&_[ ?JvOi/.2`l&pۜZ PQBA.A-@!CJDkPFKڌ}/Ι?a'0ENDREP DELTA 303239 17333 1023 SVNn=4H3@v0(v b%n/ Od{pz2 Args, bool CanExitEarly); void addFile(StringRef Path); void addLibrary(StringRef Name);void inferMachineType(In// True if we are in -format=binary and -format=elf. bool InBinary = false; std::vector Filevoid printHelp(const char *Argv0 llvm::Optional findFromSearchPaths(StringRef Path); llvm::Optional searchLibrary(StringRef PathENDREP DELTA 303239 18385 2735 SVNAe5;4bP~u_@Y#@l ;jq]!x^UO6\hfw k "]J(CI&y{v? EWu%`mό{|ҫ"qYDB^2mPQO||p%5֪l |~~Ld&.*Иۃn֟ۃ7{{i YtoT0cؿ.-1m~[Nr:a<JKR s5VL75T9Ϥ|Kb5BTU\dKhM.BBgw"={V{*cyFY.+7w 7XxtnIr7É9q 17%>W6XΤE] +03% D:1+ \xІcKٓڷx}\opVM7IQ˰=#LzbAs.6oݘ$ %9k.ܭ,>څ8 .. :Rob4+H}rj ,C ЬV½C~2ˌ=!dt7#XѻOXA; bdB裃÷;}( v`bdkeL|<@MmX|CO-"[=H9A3Ody8Z \w|3W?hJ@ BwB k*nC 1")6Y%:8'3K8[Ak(M$q~w&׎Q.p(.c3T.{6%U/ƿ4gB5:W5}m~K6^hfdmj.@:RFS,gT+Gt`NFy5Uv_vY, cT*dHWdBYk1\"T -훹w~;@)$Ҭ]K[B,. 7jnx2/fQUMUrB O rGC-H#@ϻ0)0EYʄ.T Ԏu^BJ[.A~ɉg bxO$IB| Q'IW)fDfk`w-_\JM p7Y:f:[R.mQcgF;j&׮\;E^Pst=ߤ^ʲeʕSH›ez]TA+/ ~49RpoQU|>ފ$Ѱ8L#O^~aWP٥cDwci/aCrȁg{4mS$Ζ:m$G:Q5h wb,ZPb/1omp):u ]L3io#k T(ؒg64 (qr|R 5].5֬Av:c+"-a*'E$i{&PQ_ӄS.Щ}Ω.bSִ5bEEw6]C :)jx#+›49J"G*LF]i+-#J'eDI^ dH#aG+-hV^g e'`5ENDREP DELTA 303239 22977 325 SVNW' F TDHDclass InputSectionBase; struct EhSectionPiece; template size_t readEhRecordSize(InputSectionBase *S, size_t Off); template uint8_t getFdeEncoding(EhSectionPiece *PENDREP DELTA 303239 23315 383 SVN}b s Hix^Uo6v `;+ mɗ#db)`#%n dݽwӊIVcb$o,+Blڵv.Wjd^Ԭq TSXjoWVOn~Y/r'oPJgAM !E5}egLd/ \_-j2YjB9iI}&k)Vu)%zP9YXp v T\ LA[V 4NXҞPҜTw΂r֤( cA* pV D ĄI7%X9[*^dHiOG2Y(EF턀 w8Sڣ %+^uY-)/LDt0YcK'`lB%}F6B#M`1yL@2J:-h6w48Z:#Y9\rr!w`Jwz^*IE%ώi~c[=鈞jB2~>q]LN ~ua<6׏|>T pv+7/|>!q z,#eC4t-pDLCxNIX Lsv'АVJG%#6Il%Trxy ;X56H A^X3^zhiW0aˌA3"flv2<ŨlE>=Q*?tžWO"B\@ENDREP DELTA 303239 23728 333 SVNi2D1L1cviZv8xV_syLx^uTk0Hs$އ ei10|ʒd'II4{wウ0S0b "HPZ1 @Ϛ5&qcPT]VnQט Pna-\LQjQnV࠵Tr 68J`1m0B(i@nPƧq7u`PJ;f[I|NSkjbtU1k 'Az ]aV{B‚eF G̎Hafhsf1`Pn r(XV^Nw@.½gĒXL"٭\+kuWvEr!hP=I/t^d?z'9ZdV9BS+/Uu۶AjG <Qt!MҐ_dSC'aL[gcȺ=Juĵ\`g>OzN.#r:X=K[&_z&;[.e]]/ B7{.{&$ ~d\t:W7Po ?D(Z2Y`+ ¯Kfo.w=-^EV#x&eFaZwcG/na4 i3UsZS8Mg}ۿuoQxHgNAגC0Il9Dۉ@KXf):xENDREP DELTA SVNrrrx^YoFߟb|R,M-ր"-PŠ\Il(.|{3KQ %.wgf߼!^evaOM7_qHQNRtZ;vUa]ޛʦnβ4/0mir5.*6$&MnMz/Goƣ[5+*F|[E{rL[k,+Oefo\Z䴇~L)!%˥]U4śgؿv~Iz4*(,Qf:UiM xβL@-TVE+%&|rZ]d5IsljuQӢvw\M _1[]|YI`u.{p]f\98>Nt5.j4`fv[&BTKUNfUyBefA!%~\䤤-?rǢG Ti뭺PK],-Hn`:SP{SCȁ#v?rp,)S1ϻ _ީT!X XIhGmؐRqҟGm:ɓYMLEE8]qBW1Yâɤ 2d2xőRMd i$"y4b>M7]"(zy^s ˻H33SF-qՙ̚a2/N!UR jK\K=H ~Gm_#nLsw׋sH)SlMJVVRV%@1bSa0 $`OTBuU[sFO@:ZYz/\2eEah9I?yL*8[sf2ODN )YmlϿ*%2Υ_aUO-b]5BFఫȂsp@xt vu*e=%dzE*S|n[kZQj2Jx/|ܵËG#im^>eQdaEy`=±v ,{!$[+rZ1thg׎^# '0!V\ JhQUd6),~a%CTP}${9B4,V5R SЮAhuĢp4I$)Y}r a|JT FJT9i+2*i$z,{#J@aSSϐH=2&0 5֙3% Ѫ$R I! [% d I*D <79&ȄƧDK$:I7tuNL>6W阒#⇉@d& hxPhݼB4Kc`+4zY2@C(81îQFI ]ZK<-̤Iڑh-ΤH\?`F=y`ۓxͲ!E1W-wypzG:= kCu=i0cάG6s#ˮXzEM}5I4C\ͲVau=bXbE`Ү:RO2Y!Il(|9Q$Q1?0*L"R_O0.n;݊H/?w#v gi7TH?l9񾀼b2N돛èyp!O>**"VO&B EpQr+ĮH{ S8?` %FcN|By&ibSU'1a\hIRyPVayq`Fp MVvH_`%PWph$չ IȏQtel\%p\),4M5p]F=Ï(f0٠C~|P:sT(4Ojxd49l|(Q;]vcK1D v}LI+U^g"<般wH;j۪CG鉼O}&h6ܟQd靰FALz-n}K0F8xb>R̽ |gaz0ly!?$J a>&-IJ0>-,2O[yz:8Dt'H=-'qԆ`t喤 eV`ymOcxp{> I{o JVpnY֮9GBVM)ؒ(7Ee |w _fW fCI>vcB\u8`g\UgkF)|vmE9P2ns;:k~+6Շߎ8-D}U| {+T} Sh8y+pB*1Xm:c͹:n8u$@Ekn3>eOϢ\62~~wc=d46F l N;>Mר:inN9ag@ۗt}7.hVRcf|4EU #])<&j7"ktQ 򵪩)RaeW>˫hO$5ycOȬiqS463gQ|'byyX[w&ofH\R*s:_0û/ VKu}D8}P*zno&1G١7WM|u_|',SENDREP DELTA SVN x^Vo6ߟv&m IQ;]a0(ҤJRN }Hɱ0#(ݻ'MM!?S^NfKIw4Qtl8AT#)GFF*\-i2+ihjkKv4Q4^h*g<MG٧Q!PRPRݝǪD%J;&oNOѧcr1*^ٲ2pxEom0-.*,’A.z-kXwr$b~p(<繬pvm&t> 2)x?I|c;ËMdXڢ%oY%"dB~cP;IJN-R G0ޣ=6? $A _73}lhVN1&l6ů1" q.#uWhpZK4׋fpӺN`m0 kuK4Llc+MO9J,pNՃwwY-] F˙h+̴u*:*u6|GtK}@3>O}:mMVlI͎NUtr%@+b۸,LOubע^h-tN28(~dW$J_ "HZ'Qk2qДɏ>JQ `ovD2kV[}G6^b=yY:hvi8ߵ}[m*֏ Jhߖ=_$(~Rc*sWhdY+hS8RVbeFChzH[WczďiUc28^ʨ/y3me/^&ް۝ϯ[BW4*;`)(ENDREP DELTA 303239 24091 3830 SVNOcbS9UwT IX>kqClY|eO~AFzRa;,mtouuZx^Zksƒ_1:MQveIDZJT[re!+13ovUytnR(+5.JuJG:S"1Ȓ4tV6Өb^O]EbPsT:O̔E@sVFF'E-5#fUZ(\DJM|nr<~?(gFY+Uۚ)&Gƪu\!QcPsSAu,t-D9'"&DmULOl'<&VDibj>*|\[tf0Om"+l ,AcR3{Az6 l0L}KqJVc6O31$cщ3=bJs[ޡܲ΂3MY;#0>l(,Hf@^XPzz(҄m'~>GS<)^"S,c,u>9{]$[[&uC9l t;\Rl# a)njVjGyQgĖ-+]a0>!77i?uY{ ~SxG(`j%~XVȼ&EVәw4ו}|̭t'qW]:$kK‰N݅Pڪ{?bPOQio4gCSUq4Wu]e+34.1+LV{hHѨԯF&;ShqDBLؔb&qGiߋQ[U4>!,x a#*'GIloxԩ"[]']6uVz,+60zY4iQ[XLyRq m3+&aLf+O'oJ3tE@A!yIf ({҂.iU2$wB$v"Sl:Mm@zf;rBP1U/6SG3Q{!n|ZuxG1%](&4}Cjrz{#2NLGd B55dlO[HY*gYΠWFPa Fu)A'+jbUI 5b c9OGN΁+tOU]?"zk p"O8|i$h(1,%K 1'r$bdX<-?=jTjHޡ"G4ˈXF‚CX.zlh#^~iN(!##ncS贪'Wd@t9~83IKc.GSgL~x8&s>~ѝ'HQV}0ޝG"`9Aĝ, FY0;x}wHə*}3ՖA=٘= <UO{Sq~w=:RۛV LJ3H}zf.C 󭝏y<[ef|*+hmý!˔l| $\,WOE vpSeAҙyG:!/A$%{;,;\Q^"I:<[lj:*~\];Nm;yP۔qP/4š((ԇ[EYqg;%;'"OA0sp3u.0@ת$cL $˧T1nJQG切@R5eUVMtE5:ٚ~HifGLkd\㮐P3EkĨ7Z-:>M.x"AEà+qH )⦤ G!R.|]IPHC+q -VE4xw?͒_-U^rƞػ+FJ09ɘKMuQmi:j\@ViwQ,FuKdB,`^\{x[m % )+z~=PSM2zRjb *MG#2,B3c"+W>U/PkmK+6@5̹_@t_I@cj,j"}#{T$ߐ|u:`^3t=xg, vK7SVOǫ77omy>%M|OꟜ. jv6FkLPNyp{ ߇lCW>sF֑" Z~4\r=}Z'tüϾTm" lq kkXqW׬tù]UBMX#B2Ka` NEy@u/RWݘJD-oeՈTjR˃F ~#vE[fw 0VOcE5W [7MowHgNER2buIe&nʏ\s[r KO㎛Ũ|XUt\:xac#w&$!=O<$F$-8qy߭%n\~\ɋPYan}1[3oe|w˹iItn-vO7 aEȥj]Q?K[XzoQK888?VslN뭧x_gOY 1pab,_J)َ1 m.Ĵ%Az7ph,Dޗw+R"Kp^&t7 W: ŏ)tk}޷(QbmiwPzJW$ 09b+dV en/\m)oGvN2/vF;}p֊xSJ]9{K{jKcB!Ǣl{I'?}MK͍!Ts3JuUu##/)k`Cd4 /O xG9zy7uoǨ/FJ)# bö-!B(V\]kRM  ζxrk'l'0i?9<5c_G"҉VbH4Е9a㕵qQ* Lع}΀xyJѷaŬʩ-- (\|WBJ#ÑŚѕ+#^I co*\ё-%7N x@G|mq_٣f%;1㸆'vjM:Q"۫^q-BOŷ\;{cE9Ffg[}GkT6t䄳;]g'~ִ [cӹ6 Б~^ⰨY4T-zN?Tw+;e"p/jܐ :gjf@/6$?\mq D ^jm]UQgRZ71{ϢCw*ܩ[Wa!=Z[wf~꽳_@FIק59`FaoU.X5cۧ$ua"tk;}?ԣ֠}:O"pJ&mv[ 2 8#"h19 Aer~OGTUjS8rEo$zQݍIy(%a_q_RWIu]SƓ-UWgH`]m(zʽ iEָ FR٧ТpPw=:lO&Bg X*+&-->"݂}>kKlE GSs 1i‡{~dޭ8@o~ MG&OGΊuMjV-ǭkENDREP DELTA 309162 0 70 SVNkhqso0P:Tku1F0W`NFE 4#Yf,thHQbYh5;nXEf_8_Ag0C=1lv^Yb #kOL.V`84iGEAVT!&k&1lVxQzCpBTE+R zmM{]Ic_g[nr` XnC(1&x^\msƖ_zmnp 0a)'jDԒ=$}K3ܺ֕8F>}>tx4U\gAIQ(^ii ^0Yğ,:'h<Kb}Of'ɸb\^I'tHiz;/s݋D~KbEd~xK~P˓:Cw)ʝIɉ^ފHP,z^,J8j\=x<8Hr,Jv [-c01C*ŏZNy-hLM\|gL|Wi5j&Cw;*A$|@>w8x!/ð-۾h ɢ!bMnbCd݄73uõVMYnMx7ܧ6LݸkBjSfTknB1‚XCO熀NGYa`NZ $zt(~ ԏr8jv &_ѵZLh Y$=? _-}ĽL^>nΒZOKNk@SyC՜J.4 CϩwAI!h'i f4ⓓ- G$tN6 `Ti8F8‹{Fkw0*e &j1-˒֦9h&8?K+3E*IT '4_vyy`T0*Z6E!ijy42V%.yTvKߙ23ZkqޕbqPț 5admD79̊{eCTlRF{|G0Ns&C59AԕW-vtDztş \?O׹LgI :O,_XXT6yWQ }[&4e Laff&(P),.RB-@l20WT2.]7 !+S,(FT܃Jq*ӕi$6C)W+s¢!t8y(s,+RJBjBIq&9V#\чE}IЃzp~${cA*! )5Q~0 3-Xxi̒-its\JaѢ?B_/y*3X 9'"imU+Hk*m*œ.(^$. f.ae32n2_sxRrd} ^<KZa;y,,<θ5B|n{>TJmR5='f< U4Jzifw(T0k8n)S|W 做#!hE$jIb5*uS9//_QqHҝ*A-`S]"L])0MEm? ]8ʊ䀨2HiBͺ(Z a!nRƢ13$=RVT*R",Bxǡ=ǤS5 uC:o8 ʱ(y/>$XjffV@ebX v+E5tsoxseA잯fnq A' 8,;zP1s"`d6PQ xm(r1k5 |c;Z _4fc͜R xV t7ɗWI2Sɟ+t6vT9KSd?Ƈ,UD!6 t F3m^ IMQvFiTدٹho-7k"j<'9Ɋ(jz&ppm튺L Zܺ*+'5.vLşJUc{% &?`qddc7q4FeӢsŢ50ϴ2w IadW d#*Rϣ%mM4xQp'1͸?j<|:0G[Xt( $4MCO4?MoK&<ԏ J rXDfQ|AA%!(ťnV  Lw@:c܁ҊQ̀5Bka?Sui.L2"ΐUY'%MlKgjm!h'+ڦлWhbM"1tN2Ͼu۹ q[Tmg3m90[Lfړ mXi ?#$T5i_כ!Dcg%VRu%DtN۱"o XHmoV n(H %7A9ȶ)vb8mfɭxr=da2N_ ˶S$o47b;JQ֭%:4h`\85>ٮۭOY Z~QB3&$"ۓ)+ ug<Ϻs\3()HtiI'Wh_M@>QJM#+^Noz!RvGg_ū/v, f*@X5h UM7\]ߗW_?*vL.ӽ4߾tPmF'yT9 49RLԣ[`Uy?Ws0d3uc%v!*Ӊ{62qH4;#E#x0$ չ*zKhWk,8W.Dn=btxV$o!cGty7f>Q+9@e{CuaBI:ڒ/.kx>f"LnSaKV;8(>Cwz]>|u{Eya^6)mtAh 1)wiqm>z?YHf^uCh*dۚ'G=7Zy-!H8EffEwuqqu4A Ifp9~jr)(;:MRB:_!֏v@ *$, ?[[t=Gk-v^Og/tZ.9Ai7*ʤ`9rk7ij/)j+"VԣTg"*\t19u\Ӝmtj)_8qY}GSonF +(ҕ?ًG #[g.?^65>+?+7g"](O$P8L0d  t6yG9V ŪKm !:!{Ps‚(vj( =M\GU BFW|(Rl"($sJ߭M3HOlvuٹU C!}]CtOK_)6xi,ARGZʚŒHgtV8ɢ2I=/g;/kR( e0QED2 \1TeKv +CBv Y~˖q ɲXH-XK9j;DY%݌Be W- jVO/x:;ٍ6=Cq~oՐnR|;Dc͐oW [fu zd Hsտr&tɫѠsѻa/&7U;5EyևJ싺z,nnY]ZxkJzꓯلZsJϟho4}6CqĹ\QUimq\%|Z4&$Qɏ.gP!dGW]\HM޴#t1G8*#s!`IޡaK3&WR-UzQ@/Ñ3&bޮsqmYT؀37J| &a"z6K ɾܕgwL5wzUqlǞtp7e؏Mm(֛ɻ]85wVHߥL9#>,|*/t}b`Rc^sw/M@dR-&ƴ}g&."iE g|ŋ{7ŸC$Ngxo"̂13fIqAwO{C,[.$ {#Vpvdg|PrCNv1†b}k8ć& )p-Nb«&05;| W˔.:u+W4J"nI2Pf~&:&\͏ bİ=:*xNFhtǢ\P*෽ɚ~H'}U.t1 eUA1](ú԰@{jC;WuGyJ1Ohw;4d<0tan;ް3~0>%r܁]ŠPecom%}EK(bӹ6;rYgy5uS:ڭ6e݋te}Xy [ڴHwo$͑u׬C>/_~0*6,7^ovaoutЦg}PGSdՁn4pSEPW86A5S ޘr,s/tZ͈4CHHWnKTbxXM$IY;fEx>0SH&tUU|0fÆsjwEuCk'נx?5_jd7sT:(`dDDir? ExO^RgKş`Gkg;3bҎAWƿҷw֭F;lv[Xpe/hEH |e*3*(9@`&?Kx+lWOLpNybٜz1}ʗ%A9cG>҄x(tS!9Yp1!U~* `tގ);B_^';ZZEBY[]ö2xϠS~e1s2TT9Xc5ENDREP DELTA 303239 34687 2013 SVNb()f'Cx\p_{uWI2+[c aX4r+i(I3I/? 9'K2*0%xc_` ZUr7Gi>=,=}U x^Vo6Ĥ-t iRh}4UNrγh}g; kц&wܝT؟cdR[[qgEβ?,,^c(.V{VK V^Zqƴh>`TӦL䅙^[c.ڥ\Ok.57*0 dj4hn[-}'7?hx(gTw7rВ'|ɭHOp6_̠yB$c{Zpa~{&FA]_38OFz-aM"6r+4CбP8/tBS(GqTE :LF,[6t9m0 H)c:{B)zZ+mn1loU*kX|3b%|$R-Yd ǞL 4|$ 3[ oۮ" lwXdj6;ZJjDS#1x}F3t#fΪ~" nENDREP DELTA 303239 36729 6062 SVN _]n`Z/G> ;Id-r: LtnZm$N8?ixN?, 1^dNn{t,9Kt ;04o f8UZ/4.[5@C@=^N+)&*wV9OnH\dh"I$]pJr6y z IC Wgof3P:LrNs[nc? #&i7at&Dz\p=k~x^̕ɲ>Ky—b括/,V疼/l*+_7pVƦne^~/8^Ƴy"mՎ-N8-2|BlDpE%A4Y,<.K^&H$1]܉dr6 @x=4wo4,7`NM-{0T_vH @ 8BTڝ gġn:Ý;~x$VA:̚+N(Q r.#A4K?alp!?֚tK_׽Π_h3ND0gI@IcyS97S# na&CwV~}*L6n}# Z׉qm~$P;s3*X@/y(H*nXs oigq05/ fAF$fd{7z&@FuUuE)uW߿HY9w-}X`{MXYNљt*O2O'Hcxv33 Ek#lJŀkfxK}{"S1"X* E|Hq{IjbmRK?.@ܣ+/jU" ɽ2\5a,dCxPq@bM:ѓ~bhtp* :5M6 [L,J))){Lvg5|Į7E^.(SqI`U mTl)z%matXé\bфm hP0V%sL0"߬pR!}[? c+p)Sg7>٠n (Í:/~AI$ۑi*&։R):gٗdwM _aN{tFI*M]"QsT:1ə7IUq($9MX>.`#H +Fs#㩀.L $` N30ȇHa31wƇ/@R1["I-׌g^ )!G3P}j 8ہ<# lMK .42p̾,1 +3#8H vT_7: 0ҫ8 kK G;.D/~@#TQJ4~p抑S2;fy.Dd~:i1n M!Ɓ,h)ثzH|cQMhpn!~h`8G=̅R(u2)UZ.udOQdHزx<;+9d6G/j<ܧZC^{7,S բ3 X@š:}_:N_*5/3 b꓃e}y~{̒qoV0fH:|'WYA.oX%gra}[ .,Jm:8eU$'y*.ޥ??V\F RF GPm v3 X(d`#Hblz$j^TѯplrR+una0wm]g˭q,suT*R $ª.䕳P8^JM(,_VG3>J$r0 lOOb)N 5\"/٥"tKE*6*96I0:wȊwקzYI+eHH,3vT0¢YVh" fUT )g,T6o5L(9Xh:kԽѰǨZQkkM3Z)r%MSuxsg_ e9he7S|P^֎99d62 r{B_kr 6J3JRTҌ*^n s!vc^ҍMYnR(A ':g%66V)~Sk&X"]-zVC>1IW"_,8XH})Jsi,3+o1XhsC@f8ﻫW uSO[n8+_ ޜuo^߼jl@o^0S53/I2q'wOct+WEvmq hŭě=f~3Y([0mEHv^f N%a5x&R:ʇoJ(ѷEomx~ۻ|íD9VO)D v#}љ znQb}% ߂ȽD^]/uy}~;R\f4 b匪a)0_T~ILydZsWīX~oUB,yճQD!6Cek?𬏹ACN^Eނh!otjGIdkcħ8E{ZvבSE@'~,&&sV@.#_R>ߗzAF'$|ʤti_Pv:tQJ* ӤZȄ<OdDVvtxCBDg8 [vFf]BwߞJ/N|RH+Ñ9Vm0փ:@9q:v1܆(۔!CĵKC][B d2 "jlH}OHg )M0oH< "鐪@j@hyWbM1-h,4f_(VmKX2ZOΞcy:G8A8_ uƿE1.rvh:+M'?`T7F1- c.QK}}̰#?670wb { ¤HD'3x=TGe?H0JMPummPS͖|o)*Fol*"pTS M+:TE6*PmcI`zdS@o(>QO<ACPMϴ?3j_*;'^m3+4܍/.%Mu:~(TՖHhZ{;;Q)ƊAU+o9Z9۩݌&~:JI&kqEN҆xd +w.Bs.Maʹ3X+OQ)9niw4FTf[Lh<zE?IRR& uhf #)S8Jڝ%Go Ҧ(%i+r+*,2Ey>ɒt\f[C[Qj^YeR =%H%%DZIWKf!.ndyDWEIvHjC\MrU墜+>rNA =WDĕ(JR\9Z]/:m3KayR'ޙ1zJi: ~'\dC "׼#Y}cLOϣѶjJ9Pdc]e7?ck$QZa(k17^": KՄa|f흡7Rc춽;~Ԥ݉m%C-gtڐag% Ӝ uuO yh|l!di+h9ᆪ7d 0%-].՞edM2>T8y r<-TbaM4ʣ_hKkSsq˗}2WF+eZNLW8rV8:6Zv`,oc8ӻ:)| nJ7i ^ʰ-bKGkژ1յI4^뼾u|&_|3=:VqN-ͅ*#tt%\bv>IQ"Jr .&fhPd ·*TT%ufhGIJlw%=fFH؄מK{'*S:ȃUzuiq!올ʓ8ҿ?q* :x?WN/|+[ξnΤh[yf 4vsfk2ahL Z3 hsڍ5Lbwb.;VcAw5q;78:6QG(b~뱃n'?(tUrlΆwFS@ܡ'{BV5ٷu{ ߄m<;}u^4[^vzc8t@¾3tʂ?K={W}0u^&w(Ɲw2ccEB~MB3gz?߅O>&qx03 ٚ'BLINW)7Np&˯ˎQ4M2Yxj 2 {l?W(2[P2dMe7,Z'Y(7qF \IS]E;@WEHFEmTEaf u*е@n~<5^['2LxAVRG3cgSk)INxSKUߠipg|nHSEIvd֝}_ڏF\:`}lԱ^w(ٷlŌ2ϸvE$`iKIm79.RD2viS2kP; L' ;%>9$IC\9( (KbbpO맜FffvLdvDj=鉈e\O)_@ݩqsP-#Y445i.dz (2}JS`B&1a +-OLٜ S&ʇӲvLZ%c[c [7TFi^3I.%c8s.7?Or"NܜwtUcM8߄|'W"R\^&Xh2=i)>I7e1Y @i`.&6J s?d@}jLBS{L)4hTkժ/ F#y݄2= qOLз .KZeNTaWi~yg"oě^ F> y`h ChjHV݁M٢G\k(؇<&ޏjMQ@4r(dЫ.- E媦}BT8"mHQ4`p;uaE5+hPb[6,h^Qzl+^ŭ6|2 5C)8m|xi$&0gδ2jYE mH}&B芊[K0ɵ+5˾ףI*5s>"8Of#a `=pyM7޶F|zuQ^?`&d7Ʋ2`xWXpe=GemӪhď7os3 8gs .J"%ՠ;4 JAe9UQI/$(r^S[4h}7辥Ž!Ie< n*V>:tem ds #include namespace llvm { namespace lto { class LTO; } }~BitcodeCompiler(); void add(BitcodeFile &F); std::vector compile(); private: std::unique_ptr LTOObj; std::vector> BuffENDREP DELTA 303239 49265 4110 SVN86 9_?c!zyfdq]@@KX, (|^``D$ ?"w0) A }q?Za@s3`x^}isw S2EYNޭ[ԒB۬hRVIȖd7owӒw6lpq2Xd7pY8Mvvţ|yzL8h4 GyąWAz_(Sde}xr=:=iս0Ow |PQd8͒4>]w~xixwGQi $uMig)ї$q$t|_nƣvC<*a6 FLƕnwc4?pF(B ϻ]`w']t?1a{ YM1)Pe$X O 0ˢxƹ<[Rs@?oruem4g0cw.TgjB=7n/o[N9xW7W_n67:pzqtxV|2Qs[ oߩP=_B'j;___AG#` ! i5[kGs%CM!PNNUC3QE;|1L@i"@|$Pq}lm\S[2 `4°_V$\@I28LlLFA!!tcMՐaj_hA@2@wPK("V$Lg9N5 xD=,SҊp[@+ vj`׊od2flO V!$,%`2/@c1p].'fC3WBWN<]0AY L^ɗhztZ>RGU4  H~p8nƞ5y=NS䌛<:|u 4óu}-xF}sf?9$/ A`0; /A6P jbvM>f $O5`W=h:Uӝ=ܮj"(ɞnwh{o [z"iА_™. ;?:@ȠvhM3aK]PTXX: c_KCY`]Lad: 2P=Ѝ6۪#=p(R{#Ë;p^=iÉp518h4Î:E3Y.pA aAz ) *IPdS`8S4H gWD#3\u1?]eKcӠYBM`fXs&d/_ՔRnt..S_UI&ѪڽǠčlc@ jFT^jGɧhY0Mg`{u@iĒPI@?yjt&I6  H*+?q́YpCjl혛T{)'}^7W=B՛WPF<;}w0Ӭ8UcILN=jx1ں Iek і"Ɏ: GSUuܢ)a#@LLYa5} ~s~xkgf'&hԫ[iM^6,Q_'!t5,s<O(נnÇ HR;zV`ΡPB(|܀hh;4qn|I|dcK0zG@ ~݉?Ź-| = Qt0=q%X?8EJI0ʉ:%p+ N@^QaXu{(1kWq8BnciVHZhWiİ Z돩8 BV lUkFRrǾ[n6 K]mT {#uN"kVykxjp+5aN"^8ÛY9^]-u乑!/T5)'m֭,M&C4C0 |UgWFڇ I. mmX gm,C3EA +%"+ NƟjJ9i\u@QX(?`o^EGIc3NsBG3AY &CS[oIflCnHBH!T8䜆G0u^ m&GёSmm߁Fmx.ZXQ!QF4 ;z˚`eލd2FF5s^ t6c V*" S9W^}kCba|x5+Zgܾz4]6gbŸ5IM= ^֭~7 ѵm/ z;n_XzV`eA 3%~Qm~!Fi(5^+_9b-hW C*k]eqy,rQPDzA}AuTwmN9N&b0d,-dcRY+EYK57Aܐ憉2rGCmd]u⧽Tl۰t0`ά1d~M&dTR دD|b'ϯJ2ʂVuX^Ͱ5&EbԟV$Ix|88#d`ұg_CeYKk+Ũ`iQ*]ympZxXroovP)u |ZX RN^t0O 0babNހ%W* T ]y 2\cHy(dJ qS/M%[[;S:Y$(0S 4dQ9=1 >SKMUPt4&8[[PkɂrB.q@0eVǑO@F 3{Ӏ9t]ʁnvKlyitAIo]S<f@)Sa4,p8[,ˑlR[?OGcn=Y-ZDe[(*܊{C##DM)ċV2`9s Qw6FFZ-eKߨs4HVpGP+z<.t7W5Q.^mYKJol?p9ҷk_San]3M-9Us=fPiF|ZaL4xe\R8LæTT&c][Du(1!Mi'҇.<|I]5 ^H-wwY()Y$ƥL9AκIRGo 2%.7LvJppNW015a) h57*@~.^{+]R&nuWUı*]X,Np]fMf\ nbZ~b鰅ˇ^41uԿ.A-c`-mB8d{vZOqi1q0172RguP٣,KJ4c2*[ʴn)_W8b?ƤN5*Cc\0H g1wzLSTnI|En-i\-v޶Aa='e"u]Aл<{hE |0e)<=oHIPYE%!)F'˔ҋ#7#Gd_=뻙8| ˠ>Ha$yJ]k%-E5^|'h(E=3X73&#d0`% PA$dÏcL֏ӳBBqFF\C!X[ aghe(Yb(0YTH |udGPO:Iz} FZMq2ʶu޽ݞyB8c|:qcѦHf-}61$v>#$j1\hD0N[ܬ,za׻'Xnpqn _Zz ƍzkCVC;L1V(=@ D]Po 8zBAY``JHXRUzhwU >v ?^  O-MIvPQ$ʀp *{M2:z54UFm?7Ő;bO7$'8'0:t.8$j̫E&LB>`y6 & $m2ʯ8>Yey'{kı冫̟1 1SM'͉Y=B >(L`Ha`|N;gGtZH6AS-C#-jT<#@M"K7+sEEP}`Z& 4$mԞq:w]*5/Qto3p nԄm7,zS+$ ZKD猧4P0yL$-.4@r,'Wlt6ͭLq]z6~k풋t]{ɲ`kmb)L$I-qek:-;=-fK@6Roz@V"\0I}{2H-2˫eBIN+ˋ|fs@1z5KйDP۾ =%y;D۪Z ?RDyGfO@U~i_un1,c5E$j_8'`i=|soTЙJ|`hŠX y}WDx ϟ%qnTMi)doR1ҧX- Y 4nK>0S`N04b>3XHE wLAKlCb5 g6G&stö)~֡IB_"" 1L> M`P/ IĔvRfGmTi“.5zjM|GBEOo] kk׾dy']E\\eJpp2V%YU),O[9砪%WҘ,it%cg4z!Y/yPNٿw l8tf+%k!+”4C'.ʌP#K $^n8AY&x5FdK^ҪWVJzpre'J"5zk|{rN"U'墌G+5o;V8$P֛H.C4K9tq4qRV}%J~+c10';_d/@/I'> s9NHƹ[)wQB5Gёhq`8Ňix2P.yI;0&DI5:S"Mx:*ղU~ۭ (mt(7n__5kCԱ]'5|{!j: 4P”)͉'܃aLOӤVgQc2 n=%y~B/lkPӵ!-]I'P=l;` ˱ײ@$ ?Ш4R*f3z@V^9onAx3D[}'pP9X>,E=V~n(%L=`;J!Ho4ŝ0\rǘp!MF$Dи`䃒>}\x{TzY6/on3GF!j 9%y<1B5*1 ޠf1Y[kZN7yC\B"W(rEkw%t^5L"7&L8MS$)tFHT=6vHf8_Y;>X%m0,FNukb c2ir1',1LMDV|_a?)ڂQtS6,$<-S! p.sd| 67h*:R"ףAJNӀDCgV, XDT nGI<,drQ IN$>>X$be.ғ$D_]>7otҧT+>\a]EŧP]*U*4}_;eJ/Mj `{Fw(##%E+Psخs'vU>cÒ3`j;rtsYQh>0wȎk `taV>5?xXvK~#)*ZM&ZU{ H LXvi:~Ywayei_ٚ:+` ̆k=Qx>Ű or'1ay7z^/QLM'N,p24D7<8yD/5mǚWm\7c$.ُOD}<'Vt r/#A湁y؜JSBT H!.s<db$1=,x !!@~U J4B)Uh5 )b}W%ɾF:Y]ɮ"7˩,NAh{/9.,=Cy?9|~L0ɶz60U&,?nCI.Ry* nRGszb kX\8H`_}_ݜ~Vois-,a6:8ܻGA)FجCbm Xl_'.O f7xnVqQ!hm"n+#|z6=lU /EKU@ݒ3)H9x3 軐{J??i"&獻\>*Y-k!j`;*-jjѿS[Z{L`݉rbb'֯y 9?hs.n`HL"<бc;"M-YRB- ےxD9\S˳y4k+Q&3!q7(uFF._3s쎭$haLJ;.N^⭪?9|?iaqHіYz*wG®P~)C֝Aq9<&72PfsRX.pٟN}X1஀?:źkM+.&\_}b%i*} MЖ_-hs(ց(zW Moeg>Ω¹& )t=nw.;)`*\"չyJ )^=˯O3TMȝrCl4讫-aZY=51\/VL8~躷0Հ]J4~ps(X:AfFHކ'$pyUS 1Sd4A>%\Fp%_Y{c(SlNطzN-.QtIu|6C0Giy|xPE{f(y]Kȫݻ`U(|4l鿏޸Z6"2{/p#YAІ2p{CJ7 L#riJ !|ԩZoerE4=5#@%~_憺R.՗ J'p- x7ط;a2B“ٿܝWLߣoj5O lyid&%J38;Eq 8JiL!.=dg{W5\ꏷkJ#/iuUrC"7ʈa"Stڒ`%픤U Ŷ(CEXxGpnD!>r  9^#_-ca՞w&o9PP+KGgXMվSBv2uSeǍ ]'Rx[3-6aSHvյ {׹.:X'_$HMOXϨCrk6t |y`m,{!PCR* /G(gFsef;{huqv{Uni$&KMY$y39K>e2H`;}WMPzwhG)燇{[S'z5qD :+e*iK .ˣ6+f9L5R;y„C~>_4C&gY_BrYX6);)Li>^)=8cJOj@$̀%v󅗵Z. r\'8y<f#n;~x ?d[?[4S$9CUA t!`9: b uѕcbc`x8Z8 QLSw Xb4=.iH:b#D{O's,Ƌ*c H t*12Xkil(%[PM 3e0YC:YgM- gټ,z*']|=)\yzV =mhn!>ߙB?Gnʵ.6zWߝ&c.IsA߮zb%qV0t@#H?_~*&(O'B~LZ.wܘ.us88XY갋V꺕 r: Wea;|s*ʜ[ԕ5{!,Tn^YaU*kAbtzjHTs`Lh%0 l/m++xZ:yf80<,-˷'`SpNuw>"OR|J_*I9R.5vi2e‡g/:S InF:}S͓RfP̒DeIdd-*6 WbZpSū\]VVx};h[$Ϯ#pČsIŐ"7z66m6S[7f fo_?᫽}*@}X57r}sk(:?xA(\/!@c\WY,J@e)*QL}Sޣoz ?[Z1*N9_-ck?_\^QFs5UnV[E q PbO30Ļt~unrNlM.8f9nPsi"Vg >{pz|XW\(`=E)wW,<1G$.Tb}*irC9mv* +">t쏕e^I1~Xe#u\")[!=yaV@tp9jKX96Eih ^J*YQb~WkykKlO%)WDUŬ=|@URԺ%ށ9gD/v\ź8>d9m/NU\=]@ujOnatX3( BYeT%.  e= gӴ/qӎ˚e٨M XeЂtPSK(|O$A Q'T1^$"wm97j\Kwi+Pc^K 5"~͒@_>)l)(Ӝ̀z/5AIw /5߲0 n{mܺ->.eʴ S(D{W^} koЦ<4S1]ap f0o7|;22D`\ue&U0T6/P#sm@͝?oFe;r;|&1ի ?Yt ZUJs+EYv*!$ .i7' g{I2h}MM[_|5$.N! rENX0"ZDkwdX[1$!Go> IHW_u,Zs*;zR=fUzxMȮN`PcU޻j{iۊ6;sL?_P ]n(=Z|0kr"w+{Ra1:smo94ncw#oܯWP!Bm}ݺ ƆсR <_fp?6UP{Oʞ 9*^Q_9jDZ뎴u| .gf˞zlrNEENL)krJܪ]V ZdQЅk+K5decj\͙ ;ZUe(gLH0)TŅed/绠vi2IA֬;%YKQL,)}.;>f|2'ٙ=tK ]''V\Lo#`Vg!ƜkcI=?mtǵp2'aMgO!Bb:,Zo *f9qC`{h*lF#rcgC2OH.Xq_Bn(J|3o-x_\iPӫf/FAC#)yfpJXVUU$ZbS23@}쟜ΗBS7+BY01ٛ-3RL/G_ȨC:D$ۥ)InN_U Xn.\c z:-`%Hέ}48t&$48T044;-Z}zjaqLJd,Y;͂NGPN`j`.h"eAun4:ρ*SϭRX?_ɥɵ{-PQfaIeN .)#c[cxSѫv0, 3<)oA T 9XSuS EԶZ`[%z\D|FlhWPc}h3mw=Voe%Y=_ŏdTu ;ˋw7 'յ'=O:i oa>Z)RueXօW `]`=[ւ~ Wkگ lثz]XkA}[7 ?m0T2s_#:3.tBQGJG!iM_2^T$!HON%"ͻI;i}j R}AQHe%)tq㗆j~&I b〼)B·r}bu}%/d ^p% gU /Xx# ʎ`bDkuxQ׫q'gĉYp^Q۝4`*tN b\VΉ%KsUB+[S+[V6ͣIF9%3kF `o) ?Nz|y2A EJrشǚɑo-_-,Nbk&KZ7ZT.u8T(asWfﶛUUԩ[x(4y 6}ѫIVJW O⡫tx~w~p{?=|_>l]?MSL8!֒~^Je1 ~CנDo Rjn(r3(:t)^ k܃'^xZ| y%/6f4z"i 1C0И2pNwGӽT7Um2eטp7zeư `)5spe¢D9>&Djs.DWE+<"sG; 1nHH?OK@/<(Z>}{n.ܮ ^`Ysb&e+-Iq@Ej[Z"tRAry@ki^ 9[A:(fN''^IPU]%a羃Ά9b!zXLK0)+a AR䰑9vdiq8~[Zó1אK+En\/r~A'iץ.ߖ:ri0j77jOVZ/.\"iV"\Zw~4<\a .~2+}0ie( V+'K/˕+GEz8ڠ;ٶ5tAyNvm*xlitv U#FnREiCb0B%Nj܆6SCRƾrRP!m!@5u?"2OI|nIOrunxGC7{߀)J-%%M]א|BvvQ;;kϱz v{<!W\tŸQ<7Ŀ$oD2+pm '@ͤ:==!nN^grM1-=X3Es21Q6l>TlwC:٥4)͖2ޱ"MN.Kr"s\Y_~_mQȚXJ߼q`BW *UY kqWy0緓 ! fb% FcWWc/]>I$}K_p9U.:Lf;83>ndX)QtNwb|E>< >RVhOTۯZܽb-NeiENDREP DELTA 303239 53403 1237 SVNS,o+fS .MvMYyvwx^YqoۺߟH@N 8q,v0 -ѱVYHʉ}ݑDJrt-V:;ʣ$ބOۓև0,`d!y? qEAwp֝oK]w8^vYXG),M.leT THa,m&}&1lNi){˄ZHZ,{ˏd6âQ%q?'.|rxA;It~K]Qj9 y\0e%fy&ߣaՏV%m(g)gRoHWƉP8G1;*g4@ )3w3žFz{Yi?s(ʭ"(#Ɇ!ĒHX!]G{'-!yK97!TQxA+陇<Ҩ_c\'IT "2 L`tM# gpX9.5gd '&[Ѩ ifTj怯BsE&$)kq"DzO '@HCrQo?7ݱ{#sψW< YKC2 l b,RɁkW|Y}C>(pdȞqT~$ ƢgWU g_0`BqTg;!:u,&t~t [)SvEq=S]q&Ht]BF|+wR{ FZM CS 9'$8;p;ɡhAC*a̡˃d+2/[N*$ܰvl~7p+Kirz3wnT.>2OU, Jj~@{'h ؠ$uR72`R*Wt~r@Z;)Ah$DE<u&&BBUѭ.xvڦ/ήvtfB )a N>9gCӞ9-όJn H p0'r='w洕&N{Cv> 2TѯC⒜ğ0T PTsb׌`'dVK SgYAdwAa^,&z8:pCB3mU~As+{dWmb*(bm&_ucҨ;.)Iflb):pib8`ROt P"CE6jzPY;c+̅e``` Rmr Z Oan R+VGZl)^dTMv͏*I\JKR1jh6LJesJh!qS 6-0fOzDt`!:}OƫlFZTd'Y@+,-Ü<g,bڙ|wURh$2y'/2a1XPrGlPjQk$QiatCr^3Dʖ?mbUQ7[J~8r¤Ǩ*ǡi g@&Z/iO"\Dx;Ս  K Q\Hs=/κ1%ʸR Ꞩ7ͨ 9tWXe,ƹ rHr%) R4l 7r3ֺ[!;]9.QqT6#t'QhdJJy"!KY߫ I>PӌEk:@6OϪq$94B{XAYԴ(C Zܨ{^[\PC;'|;5G+nըAI:? j ү ίTݭpG15ƗcMe;#![568R3SuX>FIo5'R|/&΂ϯ+gݯbӕI}H$T;[/U)Tp"snil}8gd&TmʄQ%. l缣\ Y&A~R秵i?ŰMw{zLn D5WWPtvmʝT@mҩ6ɢ0C-tݥr&e{@QUnh 驊㒃hTUw~[~_sɷ޿U,G xG/* j0ϡFӦp{73;PKV%bd*УbNhBSt#1-XHG1[T9ԧF8j8;t%xC;(WQ,~8)Ӈ𷗾 EM!3l4(sE?@*[^v)HE_ .A-Ǵ2j$uVeѳGS|Q,#pg~@n0Bzmhk:R{Q0jY g:?7(h>-l6^fZuoENDREP DELTA 303239 54653 1658 SVNC5RQc2tGB{[d.\?0sSA"RN%:,x^WnF}WL_\)pm18"XKicj]ZQS{&[a9=sfX9ZR~=,ԙx0enB!J*t-)ev- ѥ.+?WF <3:c-%!=TJ{zN~ B$۵\ʹ"Yȥ="&誜pZ"q/F!XF;;KӄXFABm/ecv;q&$ 'G.5KXͤnJ-@뾧czymn9*%H9Ԙ*}ǓRJԒF'{Ɍgtq^𐵜`qGÎ$dsϢ߶2!AhQ([ŃGo秽ߨ-4@S\H,Lp֞7y/v HYiEM-,j{i~M\4ϰA*dN\~LR+NEfcZ1ٱP<%ӄ Zە6>WHT-W$KkpI؜ۘ+;gS*sjQ uiͽ\uIͫҹU8*Z,XT  w4Z}1 gX֙׎VP `܇25TUr2K^')BS)~FlQƔ.8Uk:<өb{-hq ;?΃OpxєfJV22_ ?5)~>b Vi/!rLW&II]or8::/$KO zPyϞLܩq{G^W"d6FpT_0=MDX[LTcpkB"pT>BG{nޝ6͚1W~‹J Cc[Oq>^}jH!4}`h05*{azרFN0|^&s&]Hcg#ӋB`r5~ ҂ck{(1tU;q1S+}ey-@[  -]0),4 قt։3vg)3 38cXױ"WK6. |N#J~ ) ^ixauL5 =aW#7g*-q 1"C KPKuf|e"J>vĆКWF"w9hRءJE\2 蟾}#9r-L`RPc5S8O|XNjˍͤ^~ܰұ,' 6LH2X|ENDREP DELTA SVN6x^Umo6_qhNNym@&X{j{[?tXS@R 9-:`U$繣Kbilp_KQo=a2} Wh;y!R!w&rY{̠ZrI߀A) ?Vafj"fHyn~%? z!Kڤ\/$\jt ,jB) o6;\8}F0/zwN m^Ү4UrimRTR;KcP{i&Vh0:E^7 EA&;̵!-GKJ:=ۑ"bd@HBfn4aC"hܨf t4MaTEi-j@j\(a_1e* d5&< {uA)9ߪBn[aC3P)B}7ޘӫљ̩ڜ&iz7}-\t R?X߿֞f3q3AYD(ҢDW S ^֨rZ3} -m-2i;Hqt'eA:Rs$¿50.߼sxlu0j'@slPt BbţGM. SIvWjBhL Kq^a]ծxZRҘ ᕜZ(-+RQ+?<\|(gA+xfQJѠ(1U! ]"CXI=*qWsWNwSAqg6F5^֔ NK a~Ib s86^um]/p)pDA%@nQ[b>)o< kb#l6Z㐀2(Zn}`^/pr9d%;/:C<'ENDREP DELTA SVNx^Z{sHߟbUya`6c_v竭-JHh-$vg4[W¨׏nN,/hG8'd<~#cy~lJӴзQHM9&IL"#۶u܍|"2S3NY>1i[vBǏhyf: N6U:L?RocؑIIeTEZ|] քE~ٞOQ#<5=Gb#L(5q- <ݠJW{=W=WexfQ{I76>CsDvڋn,Vu:@kfCt;]u&3Bzh˚5QcR =;0RqP[܍ ؄v.%[L;9JWIٽQ*D/OKKypM#;Gγ:M߉0.]&_3ctTBztr4Oռfx`$Czq-j<}_4nX<Żx\'4l0<%U5S,M' ڞk>j{GWTyN lHV"F GA"U|qNxPa[~ jR +$.w6@f$p6Dk2k.'?slM[ `2P:s[/|2- HYV܊Fh^ | 0@Ub#y{UgySVO xx߱פyu8HM0n_Cai2 O&y#y~7M".aEq:}κCq:|d3-:F9FMSț| _kGK2iL㘫yzJ>p$_uߩV#}ƦjvqȢ2Ʌ|H"!f y;6Zl։4R) (߷A)9=~_%eJ擝 ヲ!C c[x`ϾJd~a8tH]W>:<|**ʳ>gDzΊޓ5'5!\ffy%0 4fN!EKAJTy$祂 ~]:|jâ&uAvގ}hGwl$crv/9ͩř?oyw:1d ;|$P/;yA9Ĵ^wU*:/,UHցY;=Z3dLqč${1q MOIDøJd-ң%a-Cү$`E؛#$;5+rqFOB##LL'CyBS'Ɯ%uK*jmyjXRbm5uUnXEeTڇ /XsoqMAZ&]YӦjMRt,]eȏCGR`锱t,ГRЃʤ_lK{dgsIbDIB0oЭrf9UZDx-Z^P^ee㋤%"iٌI/*J-rS$.' W1t/ ~[*PCWQx7#}iH5rg?~@(OblxEl@8"C8|@y&J7 nC;jlB926S8 xF;Ģ:ykPj0g[6K)<**538Q @!=~ lc# (,SwIVAB?o-dBz6=#F'r/jc ]5bM0#ȝ[>"Z(> ,2 >a1hcУG,~4劲nlkv)*RFTsQcѣ'jhy  eKOT).KqzS.%m'ޅ[Nq sSV!@ MRP{h^io_c˳MJ4!6 |4l=k7m yĭshz/]_ ǫd'k9ϸ6ԗ|{߀2HcËbկb-ߩnRZ--ݏH|˕x,dG^QM>a0ZhghE GaӓX84<ɷo.~"AIՋeiwoʽ\fKB]ڟ5#ַAblWA&QxyT{(`xS7'IY;)|9mq=x]ӬЩYĚYa:J#qj=K7PB|.T?`pgIDZ\tb+DgLX#s1NJ!T+ET P_DSRYFyGrlPm[%x|T5 F u0j 6d4$ /+@6t-_}Z=fRh'n1WӠԽ8 L$!A$REKOF%]4<4YGx'Kn˲ENDREP DELTA 303239 56340 3008 SVN1V`^RyS-;Li} $vqzXg`Y^: xh?jU{'6}c 5-"Mzek_?^E1gmM bKH CT B`\WdbSg[|5W}|,=x^Wn6}W~jhMvI1rilhQ%2%$𢫓3g3C5/L?|hvvL~e/v>[sK.7_d+xqbj D61 ?F80O!IbxfL[,|ut~}>:lrfƯ @<4~Й*`TƊ |IO Hգ)"$(H'DO\k,E%| 87CܲQ5MrMԖ8eA|4$ª ?DNTġmʒ]cs,K (k#FZK!,G+KtD V̺OLs> Y76gcϿ,+ 豕zFv' Q5V hh_" 4B`:eR5a#{yJGčW\r,'Z26/E, p064v-+-mwb2"K~J Œ.%0#RB6k[/I5'{w bUJB3vk<'/l)&&oznwE4m=Vmx PV]h⶝`5[㓤iʋ ig>ޛ=I\|V* V)(D]z4UA &+ %/UY>U+ {:$FxH J}A`t6uAo@ u}ENDREP DELTA 303239 59377 14788 SVN"!3A16| E8>x\8ikIc>{wCxp6@ i^v@2xG?Ecv ae>Q"G71~k2 %U_Q~Z^>7pB%#4hu7UH0/-ux^Ymo8_怜:6(NbNP'l߶hy%Cxo![Ns.b 3ϼb'`-ҭjS> DBD̕-)OBm-tu Yr0c-H}st{Ҽ;Ai:MR]Ήi>Hd0JpES65p5G-.x8M6M)8' ncCɯcojqWZnѽn&ꏸ:*K"%XC;#Zei}/[uRk p@z ȵ2GK#s{z?vyy"-—Uɮ ^y7Qrޏ|F1zɳIShN)p~gRukw|-lgIcb0QS*Z7dfI7& k5Y 9i/@CAEPʾ bEa`&~Ώs"iOtnбfrzp#I0`H`@Hy"׊i}m#5T ሤAiQyK;G훙p~kم8n8y6T\)~N SPiىJ덣;!N5cmWu!|%ÍHK &49ar)i37eۙt uТ(~;]E7.J1G/_/I" Mrhj{e]H橊u\AcraÁBWpaxQPc@߷cÎnEXr leaVԋڀpMRҢ'kJҡcǿhWw:}GN,蠆r~P7u Sc7MD58]C%8Э)!|H[<[]%#K "rlKELB6V~R[# MA))r7eOjUb N+O:^R)Ƌ 1R؋')4ȶ|d:*n}M3 50ힳ7mPg)!r^K%{Jek4M͠f87O`fRX&FV'׋|ɣ@P$}***BQxX86H| FGA72.ܮ+և-LGmd|iX90VuCi kP sLߚ]yݧ@G=&92@PV p"q)Gps%,$qjCAR͌Cݘ.W~HEб^{t-.,K=NGXgkskuq} V: euYnb~k\od^~_{9y黓Ti8U+x8-e]\#)}#ٷ.H^cw_ ޏCǵB-2#OaEő2 Wiy|P=g GϤnFB&2{cQ_[hc= )@]@iw(oI=+tf"e.BN{^})AԥgVgl/vS;^VE>Fej*N66Ƙt,/W$w GAo|}b| `g; ښmn/mPj//a:zaJO'wMN+:jC pvVK 0q8if`-E$^x}3tRy?-s{wbd/%ۿ/(;ENDREP DELTA 303239 74195 4735 SVNIv{ zjQOWU`9ek{VpN|:SN=pFqy=R)"47 5-{Y6FpYx^Wm7ίR䎫(C;PPjdX/ޕF;Űr6|X=3޻QLlWd(e+4}>>Z 2a~ϖrVzA45eGE悔bhD$nm,$SFI(LLbu?oj.1ayP*"\Kf(؁eELKgo!\ï;u7 3_H9ի#fs7 1vB|OKR6TN1V5 euNіjƪDebm+"⌉?<[^ͨ.aQ;Gw猁)(RrlHeDn GG}e{\aKoն\uSajuV@R,W?9Pluj{@^`|bU+ܬwI8@ cFi\ÖyB݊0,+g jwȡ2+z]<=A;.SL"޵O2wضC:g{8Jɮ!Cfxv0TI?Q: vFxA! yY2ឱ|ҷ n JIs쏓‰mX|W5’Nvu^-][;zγ l %gG E`EENDREP DELTA 303239 78959 8193 SVNS&QWCatI x -'xEg^wU8pCFA}ZrFReSTjO8&s!eHjH/{.oA$VtkY>GQP6U? km GsyXiiWoscR_9"`##oJ""SJ*'/%EKB6}D fx^ZmsH_1U%&ڂ[c:l( "8K߯gF Vw|%~e'^6'G󂥟8;П  /c/ '&Eo&Ѭ|t}އ^w8wo8U|q_3g͕6:D qO=]OFtPj2<_#-rD-sC*dAnF1gO.IÈ.\D{vqjba3,?zCaȍ9['=rt&{ AH)m~>Q>QȊZ|`".fB AG8[sd߅C:I&,yfo2 pgo ]+\^/سf wˉvɱz-8.Z`fRHRZu,<07mmJ|Nc_8E]|a\1 vEAIX&;3)mi"?āF`<#ō84= ėIL]@Q0JQCiZlßȋ" ֒ٸl8 I衩(pA>='|Ehߢ %8{`ݟ]Af_r6PVl]d]"6|p y2^NlF&x% ޔJ)ѡ\)(>" د,H|G-vA An.`ĪeN .5{_W|DA>e_{ ("_:+zal7@K!v%\*g佩m떢"'Q^W%-XO7~p}eDe10ўvI" 2G%eMP.yR.2)@i"Q2Z ]6W z^ (שsPZRN&D\W[C ~/Nx&6dJzo0*84*ϡatZn imrSºfyIFj[nVXA b2{NeE7J+lՑWQ S(n юIG(!T[7/B< 0B: Cubo ~Rd*o\zy&~JrMy|ͬ,>af=`'" uJn50{R!SQST .]39l4D8=.l @<1e_(,(\vP<Z=] ~%rkʗdS`pJ t\)|%~L . 2m4 <iR޾"*-ťtm4=Y]WV3FRYH1b>+=&LӚˊ T,ѓS\*/lnwX9 bY r/=Q+BȞU,ex!ӌ**iU 4  x#&v|>[ dd~WOӆ dœU4C=F.%xe:/ǡ->#nVo:G9JjbJ-Lqv!I8)>1s ܈xn '\!%ALl(;*l޻Q }'"JO_HאA2ۧ \/zNYhd{prUh ;O41Xra\y:r Gnx#}@3SET}sFG=ߍE )D"@%='\I d!7Io}k}؟j6WeZ-8v6AQ֎'{8Wm1eAljz܋bqc5_igp.A!K!@e Ax ۩*]xv9۶]!\/ 2)urp-8MJs~<M&DԺcstAx1"kT7V|d#Y{>dI>ǐwT푴ߒ`JobRj0ƹ^A_Zo1p߅% N']7uXH,KAi<\#rG~vAV(/+ߜ[;wKT} Zř:^)Uȼ!449Z ԅVjqY:x~יAA^m{ƈWqH^*jb#%ˬi[`Ɗ3-3gTY}e!gUGwǽ2ľ|Iʺ*˷:#df^D差]!p% Ա\V;5 DUN^V22$K.KDe#\6"oi'Vl.$eK%4nG2һc7+@+di{@2iqWu 5-Nx t'[ؔ<̼-7KhD>16iȃAR"2 !m!OJ;㞭ǃ^+ue])Mז-7j m\+Z~4" bM `BbI?ٲ_3qd'vh?pR"Ef)l5I`ӽU7l\.1zRAI2GLP*8%Bxu <5źr:xBJ)D+N'fi+h` ^ +b}=^T}=Z&H8#MU }T}ݧD;n=Χ*%Wv=]s8obP hx)m0w\M73ydT 9dޅ2۪& ׳ gh@~[~xxXچV C"cuKhٱSso5ljt,,yl9+ LpBt+xgR{6M.s-FuP:WTJix1n  Mcxh?I(qD/{Ђ ;D"?%h)vwNT1rn>~;uY  !B~OQtϣj MஃZ K⑮M o hi¡K9&kc?Irj2%sR9i+.SeDGHS9EPQ,me2&ꍩimOb"T^0?ԽB\ q3i'Xc-;7{;8dp>L4.~=1*IEV> hENDREP DELTA 303239 87858 1490 SVNL- ,}k, "{'w@^[x^VKo8WLthdTVX.U5( ˤJRy"}gHeX y|7bVJH ) _`ՆtY;y YEm6\Ϙۏh!?#Iܻx)K{|S&pjg/,5d.\SY+3]peirc;.Emn"gr(6v8z2"?ѻw]1p9GS6ۜkP10۔N"]?o+Yܭ{.%p(tjVWYBZEmAƤG%Gx]J LZ7fYq4|vg|%$)Se2euVY[*fmm_8k6g,6Q/ػR5y'?h5Ӭ\`Cʹ5l` b[JeXŸmJV/=$V×5fYúxncEfU8JPCXJI5jyJ"fͭnЁ >+Fp=w{ΉR W9o5''AC7a#J;]_u> {R6|Qj!ި ~T!_1cI ku51=ޚɎXI%6H&W [e'jO QLpj(g3qmƟٶx4d2$mRqPD?R!QTlܾTHx6qK#4e-vw0z!k7hz N:zK=JVy38=b:0Kh΀{1oQ ȕz/,Ovg_,7`͛P3Ye1矍|.lvQX_|R򌴽ٓ}1S:42 c({DATvH{o8=Ų#Ts?)#˳ENDREP DELTA 303239 89361 543 SVN)BRE4u4x^mQAn0*甞I9*W,i__cP~S8&ǞwkvH^"gƐ)p 1Aeԅ.++LAA{^yiV6c`8QxX`N|IhT|!%y^4v& &';Yx[regOF%cOv1Ufg4KfOU<6O<'ENDREP DELTA 303239 89917 1227 SVNI4kF)P4bs=-7'#µ22\Y y.* .}>},,3Mi& 93✮ܦq}[BjffV1={.$ԔS0B;Quv%,k}2@{c!gENDREP DELTA 303239 91157 434 SVN&vEYVUye ;x^Uo@ ~_aڭ4l0 $^k,'.w(w\%cUzϟlrq}|ȱa>?[~XfS1Ͽ]L˽i]ήwޫϘk9KMYe1/k{4k)=7nUѺ |$VUj!pEp;)hKpk5mF]XXsJkg}j#$M?X\38FtmBP0m6Bs[Mb9Sܞ*~"ЙF.JehHYҊPtpEkB |[]N.!;AϒVjr$ƘWJ pB+Pe F۟aj8D<0q26V}a/ Ļ GX3K&pcF yǚ]9|r!)L);nVFgzף1Kǫ7cm`t\\6ĮFx2 k MۊF1g - &x w]L^,z)1A-2&)O닪1kv-u\CzBQVr{[ ~ I;[Gb'O @*A6PpPz|6(>Aom]Wr1<ާUT l'n[n&igKgq,vGmqN$T{hN%ߌu`l6Dۦe fmTENDREP DELTA 303239 93560 5921 SVNbn>|<nEsW,!k%]sivx,356R$a?pR?B,6x^Zo6=rVQ8'q/ϭqNiwi[]= Qn!Jd]Y$7̐qEg/a2`:`t7x3.w g̻_#L, d&Үuػcvqp58R'2Yv\(¥q]viʆ ;zqI_pոeSoboݨhELD #]%@XFEjfqû R^"VFc-)#EgiV߫M)p. y~5gmUCA03ި6\@F"?:ӟ\(tފYqR4<{XBmƿ"L=SPDQۃٱ s C\>8|??^[OYRD2I,v.f;pc5ZiqNנ MinA8Rdy UJvqy`.#Y >qݗzaZuik2x"+3ĴwzE餫 4d2Gk&Dy}!z EyJm3I@Y:!ؾ#/ŧ;' LJ1 (QvdQkҧϢp_ɹnS(s`2jtZ;"7n4c(FIKwВ*̈́xn$.|h*xG]~3+S~!Y1~ V@)v&r 2/\(ƈ+|EIĥd5X3kJ?{9L'<:; ߟ>|ޜ 𮍋Kw'7q_fi|N`]v@K*hp"[2gގ@tK4 o.ᐵYr,^52YMKB{USlvYk$&ы]}mm ף@p?da3]"Do8Q B8M/t& Z-;h;Y~.|R%K ܣVXB*Sy#HVWDOH1ipNW+ڬ4ϋ%<7~sgjkoRmoo+Hw!\JFx}l e&e{/{͏l|NySinҰI?ownrSo)DPԂ$a޹f 厄U#f 6zd=dfWR$1L ɦ-#$_:jAl{ba*zZ@%_>pU$Zy@'&=2:Y9ЇGSAWlJ+Iv(v׳9Kq{̾5*5*K+$+)*=uWɚSMwU`֗PԶ%' 70dxrW)9&5r2,VIQaNl~DXȓ<䘪y8 6FgGn*' ]>\09;Q&Pc=XO{7q/,Pk'Ye:lKηavtEIl&2譼ǿ>}vu:Hf) Us,2o)v+A^zkJI&ʃKy^׏f Gt#40>1OM,խ g1_n-="Տx2'_ LAxgw4̐VD=*藾sp&]QkΡ/ ˡ  f3 `pxV#YC&8%SxHO G2)V5i]a 7[LB,}yvW9]Jv| \c$}r ~6T;5* &민 H0PtUd`s '9}Qe01!KYb£#30Ee^J ?U֩Uְ\MvpN: j _ML alt^Q~.4r9R>6ks||X˖sV`49M* (3^ |ZŢe:0޴ʸ *\Uu[c}+yTPJylc&jm ~CB`{M3Ki Mn4YXT|{#u4 :Hpir0rZ4.r[)bBmIe~R13D;gʕbڵ61z&=dc3,wȞbe;o 6+]!0V2)Z8cfN 5`߅@9s} ,9Jl"38䨚-@hV=/OwENDREP DELTA 303239 99510 1172 SVN}mW3V?P1QkQMV!e1 D"~fdh tNPfU~&n5Hwx^Vmo0_qb-4tHH V؀lU;IB(R>=ܝFwO\aB4pu7[F3 $Z<1qb|.ňhֻF%?V2 n.vS eb>_B&^P)>uA6̸n BxLuDczZvkv6Y rtYAqAT2peQTq]^.'c|ˣK|4$wg2 ajtS盹2u0\1kC:&bq3Q2IRtCP`m:,!ܓDQͪD% }}4,R,|T`9Gt~JNj^G;]r.(m*r Ċa^mqhP#ISƐGi,Y}DpAI|Qa!n6ږ"d 5߈= Ɉ;_,N:ru;U<Q|*(KKqlL>"-𬬉v.kW/3h/CVfUhsd>{˿fkrE}M )+^ұFS CH k\@~H#B*u~BvkV, ,s# l)\ځD`Wuf; }P\C k|uT7 n:[%Yyl 3o"҉7b5bX`ENDREP DELTA 303239 100711 2577 SVNV4M$&w3~enWVqmNlpwGxI`KegY >ZLOo+!VWQ ( K5x^Wmo6_qDJl%}A18$NZID^%&SHuݑ,;`F+{}t)\n!J8t EX\n-OX9zSK)4/Ift<9&WtɶzTE^['2ƍFY'Fs4T3)0j@uUJԺgY:N!TB_v!Nt$%H|vaFʵ'W`0*fe“-d!?&TUZ-gy #/sh+1a7i]I<vwa<:CͱxD n]$e@;2OB_ (O h2N"* IΕӨQ)vMOO ꏊX-$$QLu01<'rB&ưIU w0a#?,9+DRobi~ ;ْ`P]a3 ,Z]e=\yLPEZ8ἥ7YܣO ɔF  .Tk۠?aogn3mjԣǷwFhi5=S<-|{&8†2`,G(\Մ``+)˗D4R۽-Y= f.c DZIPRqe ]f -g[) @ 0)d6WX5Y|A dv47##tipU5Wv/teWԱY Y׎]TRRhG )x2|p<aGLY<IuTR̆r :]$1#noI.B7y 3׎?އm k(:-QۜS YKw|^eO()^;k),d.7[ ѭ3 vqL<^ 2<ay)OT2t,yR>M36WxefsywjӃI{Y Ѝ)T,GIJ4Cv+uf7'3&Yhgfb.d^F'G:-xAupJƗ(O2/WgU}IyzGp}48"7F* ]*3+XIXb,A6;!{凉Lm!ϖBas]y ),ࢱ0+8L0DRPu4=E|伮oZ)IYvBEt XQ++-+zyu1:^3%2cS ߼~&?ɀENDREP DELTA 303239 103317 3952 SVNq.7S5m^ioiSS|WU]gOjx"lflVy;H= 5DG>RR9@Xfdje L3tB Fo6D$r{zf]Y/a4zO#{x56˒Fق挆.v[J#)e~Ii\WTSwwu=㭣?+N,(ΐd ]+[ЅgltL`U,CH҂{V(hHeEct)+& %tr>؜iNO*(rM k^pU֬כi{>Vqu<8B].ԛ&"ghyWކ΁Rb{ZlV!yLP(WeûZLLNFڵfNyiVZ<b>4il֣2k#jºOVlݽ'_e{Gz5s-;eemC  nhQ]~Z Z5YjG Ǘ(vݫtpRZYv{y?7WiϦcd< ag,3XE9#ql8ȆQjehs 4 xLqEe0G{ǧwx޽4׋˓Eͥ:My|v7nc bÇӓe`{ pʧD)T8aRW@f<U2(n( h覮<.Ϡ"19#.Aw^OY*I8 /6@Af*tT6`.?u{ݦ}8qHtuD+.λ'zNMH/.OߡrJ%J S0})"+XynS Mo"eiʲ0ɻ<=K~5*DAC׊H,}H&Uru=E_w@ym6͢"HށI!l#Aop0U4V/`V욹k BMku@50 wWpU Ze|>X]nɬ;O!UشEq>Y;,ǓTiS2igj<"qPZP#e PXFXzT׊HV :D׈U#oD>0WG8'bA{VRxCդ.RG ـ&)j$jpO !@SЉ=D׹xvX喸fRkhr-fj ˌ-ujY $aJsUmy_Yư`Ίh6,OޕXk%7i3_'@wh1fT}42eU2D^BBp.8eC3-L!#[?wlVEC`co7 E v_2"[g 7~/5P`^ÛRr.m2mW46EUlY|kYn S`-"jK!Q*t7%0& EDtNíD_5H0aq^*=+1B H:av)W !~+Mb0n:~rzv "E Xy*$̘uy/v?hG{rt KԦZB)cnM˛%hBz.Im&6HԢ&d`[T`Kw-[\a{0 44[f_'y-KV`V0Vv2ƓC]7JGyeG3Z)ea9,C QA^"uB¸ӧ"pV劁PeֈWq:^#kiR[Q}F5T=۶>O풀li 'bMk ϰ0TO4jÆvȔeä7,\.E3t18FUFE՚X@7 ȀnKH(T/Q7 ߧèVH(4 @56 *F>9}I<'/hSS~NR+8ZUB(6 h=_ pP rP^qF3UP|,5W>DKScNDwA[5sBiC̢imZr׍/]<dYh;-"#^h|8w)|~o-ϒ;Bɗyukke7zg~л^͍pW&W0O1=;^MqWrI˳qz7v{b&VnAE_3NN俍:Nu3Z2Roz a|mfB= x'uLR|evyYҶ LR#`j0l{:oahU7Murqeh˥V E$ r_KLilkmx LWPހƛLp 5S!3GnDIV*:jeaH?"nÉ(@$L*h[D 9)LXֶZ &LI81}w]Vɝ&*)6ha&H!zn@l,htJdB8kh g}eMrEc ' ~I)Hq!p0BcVYyaV`"Ty|8N|Ҋ9/e4cfU{czN0LWI1d7;C4RGqNMpW/Omhd\ Y1ӭKW*6b.0}?a:Q{JP 9cNF獥rOG)΀st{&Z2kS`m0L`d?2ʡe314W`Ëh' lxvmꈬ 8pEAhNy*7X\c8t}V Ћ2LX= ex뛦hdE:9h:FuuOʒ뽩uQ`ح*3~ưRXJ1񢤠ѝix|+>,3 ?czR T'MÖT0F,-#6!=)>W/z˨ٓw| ^1[z31GBnLBc#+a D< "L_W k?ulW9_ad{iR)R8h,‹ `}&-X4o^tBye4I$v:lP]C硩 jW|V? EDEz;T994 aGhV(YX/9ʗ|CZq* o666@ګz ?qnQ |)A:F'ʋӦJR@QVZZlM?uo^6 wS`Q;I_6tpru'MNi:.ͦ~TdE>?qxZx0M?&! 5Z3ڝUz:Ofh#BpO+R=Q30/[0ٵR^@·z[iX?[߀'6F߄|H5q:fĬ¿{'b 8,՝JR>D[X:hUmjpJ\5hƘ%Ng\aTXf[Z! {SDP:LdR7e]lCO's?70zb8=ҳ$q;ihJDkg(;*c͵nd1F4qʒ]Űa_|D|)rؓCo߇eFyR{;ǰD Sw3ȃ= oeVgx ;Y \yN694>&7gb*,TB V!Y,&cgՇoNYxyˤgBq;_Aڟ!ݦ[8P!r +`sEY8 f.bqzGLhc#$K5beDbP-|Bo휅.^):gl;z6+;^[EP@D`Ctg>"[jקrP=f}*BN^x-L[K]߷mzֵѣFnem.6tY`v+|ucD, 0:Ҹ-][08Nqx{zpqepH} wGfO{jTFhńć5tIfFtޛ\7ą@+ {YJ88r`' ƋEw-SDI2S~-*gDK7 u?$.fK~'kgY&wXu%"u5nJ7S)>gk=0(6|:dX{y"z6o_J}v"||D?WPxގ'cGB5\4'zwPW[+ *o3X ޽qAƷk>aSaDc0K䈱-4oW,L;M|ҬoQ8ƀ·K%VN Sc3lDnx,k: #tufpG% @c7's2u!Gz{J`^]eG:l9_,l.Y-(y%B&CE3s hh<9-ON='[+ vށxf|%%ﯓ ^_熔<9,8tM&vW%W]Y6G-լ+^[1v`zxo:bnI%nk%wL'/  fuU$rL([zpzR ')Iks $:MRfk,"(ALz([Y<֮`",#vDWJ"S襣4WP&V~+HCnLUeeN~qއ)[$ В阔د@l(7 нxҢt>Q%J⤕y/^׾?,V†B4LC T$5Id032'bk -.!܌C8b k s=?E? |}!<{0I&3QË˽?u{?7w0tmE+xI΢WBĎN CjГ1[h^N? ˝1Fm<c>;:t[7*x)72;F7Ra<<ƃbsOfy¦RKDA:"qy "P#,l~6̫9\ ,c3xv|R/^Kד6rрg_Pf/ NQ@dr{2~2k;qY+=bJD HRE$32+Jg<z]nRL^3 }HrT.Il=+Zfmh㡭-=y(v@[Y%Zttp28L*2S6)>]*i,E4վeAD< qLqID|c: oy_k?hʑfqЙ"2-]aMk Q.탉M.AU>}E^swxxlR(1(؆eiP0g#LH#(j@HABUr0qKoGSrdcI;%uC Qeݑ|0AwV-vc^֣yKe/`7㚸4N>/\͍yӪjSzrx3` .y'Si|(u;De" +;-LڧRU{tKfƭ%^AXmV;Ϋ 08fu8wSiSYp39 櫙!nN8dZaBmH1Ҙ>f1L٧=oH47KhKbޯ0>=%3՘9hNf?\;Y1>fEs|N .d+%>;6P,|wE H`WKsEőlWd-OY67(WT;T77Ih>EgǕzju=wjG> ^Ƒk뗰Q۶a? R{yk I/-^p`zˈTSQ/Lt+ 89;h!8w#V 5wM|i_V=ST?R/U.AAnFdwj;,6 c&ʠ1\'ULb)/A}/cHiJ&\I|F_P^4\&8 3{:DM"-Y!woo5?3}xpnXv\ќ_ BX`qAeq!A?ݕz 6cNv?_G>1~|+ԜDLp_:{"倫bki=ZR 2QטJ2tǿ"~IJbZ{\1f=Va 睧If#AlO6B13ҺN$XӡhB^fNgXbCJgY<0uG\?2 (m-}gXk=D}Aeձ6!ݏ&BR`H4O鍷!-,)\ԱC\g٤$%u;Ji4gi MrX6*G=W:ow&Y7/Υ%OzYLW~Ҟ1mu?@@oGv ldxz%:5ŋOhޕ O/:C}v=Iߍg)TY$NVx?vJ3DV/jǑpU >.?Ce:sAU3bw-R\ vf3=ſhI-e%_+GQmnѹ(7VP`E&q4m ,:7K#}.y=lYJJ ĤkKOm!P& Es "fu՝*0Eg6]zjgYu6kv=V)]\oMGE&rlc`cѪvWmdlL4D]ҏ(>nݿ3"آIq@UM3 B)}44jƚ̡ᣮz {}Z?uoAtsL}6:A eɽl }XszFE"[GnM)bvpخdvW1E(f1]wm/$ʬT&<4QZ4ɦrp@Ȫ/f:ٟ?9Ul t.˂zzq|I-:bNHOӉo"m)Q]L+i[`|OsuM-r뎡prQ@o"P e`C-M߶|O{ 7_6D=ˍ?A7?o?ׯ^aon(Y[n8ټ|yy'ÆRGo97-p-wT{W}?L,%>C- DxEL#&tͽ~vΆJ4tn'H."s*~ ZuNば~&=i<.Qt:ڡW. j^X|D~@oj:Ph$d@~$<^o6,O_u  'eՎq#B;2e!,yzto>gu-Ɓ(D(zXw3$1«?2\#zΔ! 0+H(uV --a! #0uf_$|YmӜ?qz!7qk9W] cW盛݀3)7N1x%wp^zg_3{LsN%TVBDž@0$̝{O;Q |<s$dKbb]fGS4#.Ԑɠ:ކ>Ǜֳ"W=9pbSrjܣu5+LpD|M9B`!qEqa)\ 0E(4gR,\kLh.uq KUK^0f,nLlQ*V\p' ݄-[Ў};d5'QB 90Vu ap< >*#$J"`M ^SIriizOQX*lb0mp V1@v#d^[ppKDM\ p;;͘>M6Z]SdZCe)}yLJqmbN5J1\$᝟:ݓy!Qj{PFc7_=?;hr/1]xI[s8K_fw tPDx9iżaF5zZ[iqǐr;SbHy:H/z`CTdQK*mC„RG.I؞rMANA4W=q5*x#6{UyFJ@Y먐'0ڝA*ऋ_,WRwR~R`WTЭht嶵e37O!bBb3,SDg|(c5%pdw~a2t~' ?I\# wѿ\ =>[EN .]SUupe?Kʶ_$fa|59eexq(xZ\72lUDaDb`bûhz MW#QM{hzዒW|N VEtNXqLuWh6p33kzu_nQ7v>-D=iC.Qq@Av}!{haV8WJF׸:i:{jY$4|'+\ ڗӑ>dPG r?2R'E8ڡTm_$#K}=@TŒs>jOh2_*43q̀"L3u=]y$Xzz%7͵I6GEśF~}j ɚO; "$(b'q_<5GĚҵC Y/f,fZ]Fq0<-oLp%;@z4`Kqh72~+1&H'.zM1YcH9ݧ\n@p=MGF4bҢG{33b]am{߮ĭXp%KsJ.hs=68' (WޘI8Y>}zvA4 =\rmY~+|`T>3%ʶ_z;>f.rgVVXʖAu2E&VaU!c~c* }GY,l-_⪋MzJwbCdꇕ*E$kUl lz BGqY|oz1qKJm>f>Wu릷\4Dp5͍fAAWowlْa5*-b /d|4W*YlYD4r(l-Sԑ%q6g;śNQSrcnҴqz'}Wk> (LמO͍02&r/WJwڷ 9={YGEl l,Q6cJRE኶yXC1Q܈_ߩF csI/; ΰ1ҵa[5~!xW#޾%Iw (7j>'BwMbCˮ'U231Jvs{4bn}F*I5ºL= }1hڿ5JG_=ਣ'Dpٽv5.$r³ {$Q`bOaTr\b `8~(4oLbpxxpk V4m$eU+rGj2QWW Ք>]9ڪН'M쫪r}߱TGC_LNX|u:Sճ++@!KZ?{4:>> ~epT^:@_A#ҧǶOf6Zv? gi F7,.6 .Ж$ofv{fʹc|U F{fO}r2!]8D(o{oZmKbd:GŵtHzAJ^T-(٪jDe}2@"2EbͻǗ@ey9*y댿)Y >Bq.7@xQhW^*m`V|A 3a50/u~RMӹ:TrᾹJx#$c&G[Yﮣ>"$谈!fGbLG,5tf:"ۅ)_fcūW|4,%{hM$Oݍf_讫㇐5 D[DKZUI_v ./WS灯 /";,"q5SŏZA .Sc+j''1sNm(rι$hkU\aN%#U.f=K8U'͒hnފuP?\]_'5wދ~ju)oX4Hr fh+ qwWy h,J=J!@b(ihSւXi=0; f%m_{]`AQyijqӣYZJ0V5? Ӕ  N2qZ_r(\]5MlhRCj0rۆ fzX8%4A[\Y }zaY |0{S_STjUi/,tTNXS e`O]phae}TGa P3BE`̝F9z9^8u`/.}0[:i̤:zxj;[k ,gm4'rhj-^;>('a*5DU8 }QSsZ^B>HƍEdq/6;@xx\zmVv]G}~9߇ KE:.x?~mN6H2X+ )8X,ߨ2jBPT~XQ?Q䔄jP;r959tA` B A#\|r HKKB! XYb Ŋ0ʵl0¡ʵ3X~zV#ܽyơʕ(+\^ ȇ A y\|r H~%5Wԯa{TNAT42luE ;U-QծF\_vn%ҥ5(V#)YSveJ+Z ܁|Qj0oGQj0w0Ch6o@fUѬކ/k-RyrBkQ۪r05jTۊ!ENDREP DELTA SVNe>eex^=koH+`"'d悁=G" PbK"|erS `ǖzWuvo?UUuLzqԟU/_* \ovq|yAyR\oL)dtz~6͇ӛhxz|3x9D$}yߟ?seYQovwtrw-?@48ٍ7<y .Va諯:[^,C/I襩%*\U"8 &ʥwuKl/3<2?6>W' : YCc~yB~,jPG5q $l ~=XQx+;(;m ?w/= 0sP{ʒ\o[6H x T/6|u{Bz."+2 WûΆ M(ͪP4X@@_9/q*ДleU$RS/LH|TY8!@,=8^YFaHMi_8.}{%|d]ɾt gQwH1Io.iS-27 5 OE i%p_'&LI^Wx셀uE$"z' }Ju9x4bp5T}5ȰJ? =C/ p7]I0WD9jKde< YB E#j\x"/b`L/Pڴ {dBY8'J: $z`IāFRLE7C;;NEsLjWA9N=PB#a8өN`SG}?  d"N!eW“ߟ =BVc~b^&HY _4]Jʟ@'qi I#xN8]lqc(̗6n0+^?1{98IJ]PF S'S$o .d:gLѠ2 M6fsA'FYxRp yʋ!_8BUE0r) 9-&O,ԢBtN*m/. =jŠ46n[CSWE ^R"!ւ,fˎc/oL,K*bz㺀#E] * ZyN@gsM턎(+}I_*ޣNx g&2X:` qev*z 0jpp-^~FE 2G ]0X,4VOcSwl.$Gv6(E!+(F'P.;|э$7w7' q v wl~>d+7i - yQC3QxRZg)&AISΩkb섨Y-v,X] Kqd?AVAIE+!3ܝEL|D^& 0? NNۆCZzm>>Rz*7oFn.`}Lhh \P:s?!8Z0m3'V}ۯ^uVgsJ~m.HS ƀRq-iC?(H#FwpND4(p=>@'#/} NiTr89bmƛЃHg #SpUT{qgEDS㒛jáx9n)1<'^j\V"JgD- =kHAS20Rll6$"C|䭃Gܰ.e6&O929 $婴e4HJ(9Tۮspz؞]^7K<".SR ,,[{{08&O%{(H {#ʑGV';0h7x?'0KqP?Yqp+6XJP @@NWsG9vJ{:Uʞj|:2Yos_P-J<N;,5pV jk9zjb ft6p|MV+wK)3.=΃iF[O|+X?l8?bSDFwbr(FٚfeC٤[/ Nw:h{kjt^vn#VHrRڋ~8Uե3 Ke)IBt[ ċeR) 2w}jGc"Y8H{@'W95g+$'YŎf)v}"a\,UU|&rw}0?iYMsԫԴ77 /#ݦqeO E(04CqA w&j7%b4O}xIRXGB!qRi.Q *a#|DhHيpz>ٸ./ĆE&3B0KGJ( |9uѢ}ChTW[OǯD)?'<%PԷ_`Ȟ3OAr%_JLdE xdVqvrJߚNLI;ox2F0]$y!>p 9 宭ˠ_ᜐ{}z,{mo:; C !SsQÙ3Wku9D$N`?(?YS%Yt9e˿1_?qZ4~.:TtW53fŲw K_AE`sd{lRfɐMtPZI3bE;dmNnFOON.?] Y-YY#5t]zCX~6ə r.zI̦^~>sbd,XA7,RdmTϷ65ufa[$SZSJsк]nk75R-X@G|Tsf/0l4$zWNmAVD#r㔠WCߵL #lpTͅZȋ#xri ުzz6@ *^*ۼLD'^l !:T_ MD˷fem.~6'׆ BM]enaRnDE]*u"/UxW=aSs.7!zKg XlXmʜ<-Nʵ3LL25ItP{bjUq `'@{h=gҟv`C[XjF (Ǻ-ݣb1+m$jjγ%NjEP." ޢ"A/.EUծ K~#oMGq5Q;2`[j=-Oq2nf.Zqˇ\bXRW|S NH _)؅'{uyZSpP].TjݦU[_i4"JN]pV`Y67pxAnimz9 j;׵xsi6OO[Є^ |s֩MK*i~Q4J8͞m}XvaPɷ iU2щf$:f-^@QnA845F/]k1:Y\;1lvvusm ˺ 8v5z2_oFҵ.5eV] 0t!el=8tucT'nRLDJ$aZ( tӭt?wENDREP DELTA 304767 0 43 SVNOWo@x^mHwǿu[n,kcy{@F#fRtMK׮Yޑw5ic.E`E0E/"zh(bl:=s=vIxr%ZSV!-lNpa8CDJȸayu#LlOUoRZRnͦJp}_x8E 4{>p',qo!RNyxLwq9H#p L{ gbYn ")ӈDrDi,H-DE(|*xԎQpl^ ^'?ZTѝҗh>͐'`ؖ8]I=3F0rkQ \-w$HYnrVt#3zy˓[&y|䅛JagKg&y]jaf9 .V*ML ZɲIz(7 qTpHA=WOhԎq1ts !vדMz&LZh=5"c6U/9%WGYz .k~ [?gΥoY=J1.՛5Qƥ3OgAhAAp@T_Vh= f؍ g?p9q8P>'؇xIQnZ _r[U=ħ7B >ӷt>@U`T ai\si/UHcxsdG+ x^[mwF_1Hm!t]0 nw{z8B!zm}」W$N=G̽w澍&:ky>_Ű4_rv}bYkD#Kǘf[a")0 S4'Z87t=]`]^1dU֦ƿT *K%!ř,q4=>ڽ2,+0XH4W&(ݳ&݁穀J+V>H.cq wNM -nB¶MfcC ` <@Si㠁S)l? (!/g8W)ϳV?˟bvKJݞ\kYvVZ1{3ΙLM94a!POŎXQ- ō`¢ 0(`*F*@Yi!,*yq}N}<.4.#j.$9SkˮK[{.Ѥp.X<٤Xypg_?Ō:LKA#nN4~Zԛ&*p5)M"=f4Z d4уb)9^fm=5 ܪ AᐠCWC- tm#a|C{**CV#pLݷXI%I.PJOU3*1)Sa#W|q8lmT 9|@aqV 4{Y[z D WqrBq!UN90owZ/Y{R\&F5dԓR/Wn U7\N OD.Cd5wнVMvF;iL#B֟@ UEJ¦u۞?̦86H'c[oTۛ^ϯۃLa(C?!ΤRDWF6q9&3}\&#%ONEDL[QER$,?KaGVab-JUXDpOKCW>Ȁ&Nqfq`Tkgi:Ljt\"|@i s/S(Sֳ2$ )Б!꤁i2.- (= v`?IMH ^XF@ )+U%`𴐛y*$Cj•Y9e5_|& 6+\Xo׃?o 8~o6^Ǟ LYQ-m؏q uA%W.JKz{C'"' oc@#`[„L ~v= Y H_wq޴pK!)8+}9|(p/D^DC'q9Baos'Gt֙Tj[Z'5T-pr_Q3C&=0QBAGX@>A GN:\=`n"wLwGMNsl\Ԕ$HwV490_D,C~mWz/.vSJP!3P!0Ȕp- qtŕhcVBptsȀ IS%d*Xз%"'7Y%$YI-U}0<26 ̭3P"n!`m̠ndoaA7v(\(eG7ggԽs<{y@-Ǣ^Ğϧٽ`aEJ&^؃#E xU[KghΙ}J]֠B)2Z̷=e.li[{xu {*hkllw^K9< `'d43(hkϔ޶!Ů+|,2L(=Ncuw6)"H!Ȣ$ZE:W.Z^.`v-u}y!/[NI/-cڋdu{25̦9ykb$X=Gp6zVi6^Ò( +8 QARIYtO'HlBn[7Z+uҩ=pP~jDDL!hM$&.ԭN-L|ħ]BEA?-?GIIWk9҅w'+n[ F‹` }ä5WW=S$ P@?R #Jg->MAz}axsJuOGng6'˾N^ʤlTʜt|įVj컕!`=RAtqw!b*GHhGxSo_ݡڑ;2#8zv* Ԏb%!1鉂.m;#Pfqk,l79  :m[X+X$- zǚKF.ݳ +R2f%vMͤ0q~n8( <aeG[A?)NNNwk3\8XY<ݼI-NON8X-l:&|66hg}zp ޾l^Sh9.^75S[O\FWgΨ ƺTR]sJrbNH[qjU. ϻeDu*z#=HR&n[3@5wrSŜn3 LS楠fh[Lfq Gnm:˸1r.'1%2L=n֡[ÔV%orskgS?V6q Dn*ҩIN>Ն/H5h&Vg C1\  .~;,Pj[8n8ٹ+zNG:qϣAjzG1Ih2GR[Nfh VjΤ$ }7CЊԡac$֣R+ #Xa 5{#@oSW *z5vo *:zE3Kohƃ#3(,+zF𪵗˃+g֡S4^a3 cAX47[S.4p *Fj[Zz4l湙?P0*$g ]<ܰ8Nh) ZtcM$ ktmD#` Mɖ73 c(Z^DGF4yagIQr =Z>L{TGVabԡNݝʮ[{d4/Au}OuR5=c<]@/_}@kl8oXP^≫Bޯ\AvvYRj:.y;,>dM, +Yd1h> j~XC^{;R`b-q 4@<.J3"Gn 1͎fY7YT1Ncq׈Tғ JGn{8u7 .2 6hD*|!BabXzlw>Uz 'Z$h^WSE{Gl~fNʛW?}_8] 9 jй8y@@7Ǐ7Bs.'4\ήIf Hk'ugx)^p>Fc[s맃FN/\t8)7ن/~K?W8X/EcXaByrV߀c1.~5u=4/Q3.Г#Xl͛'Iq0)&װ_m; ENDREP DELTA 303239 122159 2437 SVNuUAt@wG`.<&wca 7ZtPEbrfWx^QmKA~b0B8HP;Ioo$ " rufh=~'P/%2Nljf,6g< g1ѺWrŨTQZpEH&P8v<Kq'-A͖Z 5eX6B_{W9WAq`g0  }ڭ \|4iZ"ijuBUGYUν\PJ^(Ү-dq0 (63NgOP_aPPENDREP DELTA 303239 125475 9167 SVNGRL^x^RmL~X.WUJ/!M%ݰ>RݾP+l*CuBE&13F20ֆ:۳<90"!mMPϒ\AbZ a }ҳ5wIWF3d p#q˄0[剮#^U_&mw[M{c> ʷg69"hs55AoVH:?xsUhl,N䐭EZ :>`3Gv[DCC/G{+9(%3Cч\,fWnM 41J3n\$pv%V]$ڮGfIke ="j(t G[h=jS&N=]:SȅƩ f8GG@,L,F˜wlCp ))c ].XxѠW&XϢi B7X/#BjHx^}isHw^MI$}L iQ6uuo/"Ac%_^uᠤnst*+++++3++q.l]GL,Tb.ᴈ$FaNqEmfyM bѴ xwxү_/*͊Yp7I" i-"?v^ 6;^瀬Jeiav, i4S:i쬲kP;J)tSab]]#]m΀1- fQpV[8Lx~Zyvpvz}N7Hy &!pN[ޱ:M,HR>J8gUBtʡޥ۫,$E9Q P5,W, fN^P>'N =S.pzD^U%` <̎[!Tq/9 FSg)ḎI`}Mg0z[,F\]:Dw{b ?‚ 3-ݤiz1 K;Udkh^TA&e ٱ؅F Q.@Fsz&s,)`b%TFkJ9P>C~}mn _YKs!(Ie+#ɜ N'4\Գ=F}w&RvXx=SwM0Brt"Ȋ.*O{߉H;i'%>].DfGEfaRD(v__^(Qq|6ȧY*.oH`m*_xnSU )rݱH#z74GnYx"^Z1=p:;t" 2ӝiusrNE )Wqů/\L]Zt<0wD-TSۯo`l٣yfU PoEI/Z=YIOl6nñ]D*>*>-q 3[Kcǝxjy.Ջ]3wi 9H(4kG!ڣ޹'2j4l,x0äz<@!3خaEƋv; qVϟ[ iN6 1t}1q=iz,FLYQm/*2'X'Ab~&ѼE@&6o ]Ю翴2lZ!G]uWb 3*דIĨ8`zv=(_v"{E@X8J;Jq;0Z5Fc`Xtr{ Mw"TXd*t.X[R9$GuAŕ6rVG :BW@ZH=k3[ vd0H e X͢p.aIk\ A=1;,P039_ (3bN䠉'E[)8MnF6^d04& DM6c@@ظ"{36\+DxIEZpHqC==bYZHjj IFi!wcNkIBXYQ EIQ^6pdXޤF",ާkTdZ˸ƽІıUoC|GВrm"$+g6 ~Z@|x@m'voJ rHx9h-e\5@/ qTHi?]E[JgTq'("tSHдn4^8AE##sIeA0aXe5} SHd]H|+w'z}05( \mޠ'kV!ʙ@8Z0- R+5(> 5fN)Vl63 ѧoM8բ4ikRT.d/YY7tH3 D.,XK\NJqڼY|[ڦa:NM8b/xɝjhͷ^_;@{f3ny&ֽ\w&`Ed|#v>@xXk| :Enrp1d8*sLǟuk'X 8͊b>=uH'%Ĉ.Ws:ѩ7:CIĝC2CXC )\mhVI=MbsV:8qgbc|5Z# އ'هqUŀ-Ә7KbAY+:.BltLĎZxyϺY%n q1b6y-/`I@ܭQhw]:~ZqX07H䊻H3wjF [Wބ*P绝R6EGqz~F4lX%1%mTZ-N U^wԅ?6⒂ 2Čdia1$۞+ Ԟ)!qLm/79] `ϚQԡ@I3_U9ILzk|&FPɌ=Fh:X#c3-MD އ57j%"e1[p0ޖ@:q" Le)g~\()e TP%/ `44!#jc0A$di9Nˤ=i =?/ף#[o*VFڼn}+qwKr" ?M>ONL8RcyP~)ۺ' _lʠXxۆ3쨿C"hB$mig.9@tσDO.L=QҌ:ӯaE3{@߼L FA_W6cFYkn%Ƭ<3mh/OBO1=0p-zόQx2AebBj9T 5͵^^A-LNW/`]u"UR ƚ|jρm2{5EOv'R胬};S)|5Z czEz*_x- hG֮kbmWpfݮ!@#\aI0C6dv.'Pá#@H m i+r)}xZ>*0TO XF8W,[RuH)x-47Xj2)|&ތ8~+LڌQpݽ~6~nQ3s>b< i %M;,X=QqI=K@*] :dclÝ2`% rHUY:U:6Xj?$ݶw,V]r<"G RZ{&D[O~[=c2 X'@P#`S(Px넼@Z})ʢ4 <\oY4K^)a7tM Lwx]H#Jm{q{Ө7Q"Ix´nQEt@'aoh+.ڶ(S-\v r alngV~ߍhۦМW7X"=t.1czHsΉCJz6rHi4˜=Ӽk>X ~̰K-_t}*sQ4iej`Q:DBz ay񻡉v&}7u1`x[~._sĿ L<9 YcW_>w9>١ N:uynbo\aMGFkv5WGBFULJa>dgujGEZ3U=9K:t{KgQF.1_;ZHʁ^=yEow\xh&-̽qD+)<"7F[!cCPwRr7goQY}t |MЏW6lmy;${XR'J6$q ,,h |T /\N9zcLR @49}J9O=o?&/jvk!$D%m>i&YfCוl`26 6a.wa25: (ވO.kS|1a\rb&I!xwNJu/qN yOG)h r%2}u|a_ 1Fͷͳ`uù.n%ذ\c&F%$԰w3A&#:ZOTC[Da%g$ctd!T&$XcFD]!f-CR8zŘ{Cio+99ypmB՝/= j!B@|gѻF>I`DfL@c(IR5nZ|)բ)E3]Tj,WJK, ~,s˙%>2+ʝ]=?hG`^~#uN)Pf6bzNi o7Ҝeb`ݣ: sn(:6Ll]^*&**^7۵@ִ] _j3}e_7sk9(XQZ`^s= cDf?mgԜf{5'OEGW'EwoS |( ՞†uLX~IIxՎPꆸ Ga0jqIkz3ꗣ}l.pN s%ߪV$'uϠ-M4$#LYqsb>{ʔ 8,987L(NQa;8@5+;j=LB(hd$`&.mC7r9}v☮=&wofcL'm㱉gXn/5}TӲӈ+X'`C(=2Ƽ>1~AtlH=#wU:"s'5!v,)cnHGKi{IUBw)gBpS%sƒHirs0k)hR?+w4t!xt 6r$s' !h| %ҹ adJd 㙀9<לe8' [v؏R"] U_19P&qo:pi@*Gijx5[R5K08/ XzyR6,B.[ވʩ‘ziV=U꓌FQha/ʽds$E^Rf#ft$N00cPqɧI91_t%膥3Jjk鰱ݖFڭov}kc0?;9.Pފs˼xrZ9}`yVhuDJ٨ɖG鉨n@ bipkm~ XmB]|Q镉9Fz5l9 9q'јt|&q$%[IKޤ'FXH2Π= F#66,xM,㢉h7HĤp.EBiHK1&צ䤄&NTfrJ-+,f{xW\7.]ufBW|F^ 9]Z'*N9l ʁ1%׻9; +,B U8a4GDea:p}dyaRz&؅#;ia8IN'UWE#! Z혣=Hf\&h!gQꩍiV wR®\Z Y}Ӆ伭@29wnaʺh zb/msg?dW\yQ'gך .]:]P542M_'l4:Da0'CލϠp3 Ψ΋0JI%@Һ?Al҇/Ub\%r1=9bPZ9y*4&Y[GP&~O}''Opя>W]S>Щx"ч @.(w]4) 6 \NFw3cV/{:~$ͩZj^]̗(ȄqC_g.v)˖DiȪ&GcU"cL#Nm"$"UNJSOËJnIw>v3䔀V+׼'wiq(BG벞]3zrf^8J Ybt+|a2.ka+ֺ8$`Ge[arJ'_<^glx{a! yYQ?_'P_`brgDVؽ:):;eA`r$'IŌއcK;pq0X:6IXIL)=C:_SРܢ5й5HD񖶫Ƥ=UDV0: IFabjqr:ڵC|ԛPjpLFO ׽@q=@0ԇm.% ;1Vi`!RRKJ; Dwd#:\'I1{RQg:IA ~yL8ۮ^TS4FxΤ(ku^ݯ&_m5L/ vom.{ɰAK0~GG5P` 3ɥT_4L7.(i֛=E`WkFF%#MTe}M\gʒz|ϟaUZfGkX|8zcI }~\%lIQj<r=*@!B7@ sxė`Һ16@$@j>C7"QIRZ.@G崶F{t݈,+-1|flAU+= ۙ^i9rphHU+Rt TJJ0&]xel" k>su\݁كĺ,.K%z1"jԵp=FrЖdx-0G\yltXҩR|xm"-gCؑX+Ԋ"[e ,Rc ۜ!Qn6.<mW]ke)Ws#cG)lSj&/y&/Z$@j>cv4`}-9 ;iZV^7^]0!jR7 naf=X~sܢ' 9'ʙt=1ιv[eJ&UTM+ª^h<YbS&'F|ɿ)o"e!I(p uڂdf^[|:ܟsP,Nf>V8ҙ;`' XFb:zĀzMξ&TӻӭEނ╘VM[u[ mnnY H0&+Os*Yl.Jn7eXB,?a[zoh_9WQE'8pاji4 bibbșA{1Y ",5zKM!Q3O̾^no6IFD5XeHݶenɟz̵-BLz)_uOx፦'L aMOii90Am 쁆kw.(.%{T-_0 _ QDU#9}W~+Xs~ZsZk$(C2;n 9T$:zS"x~̻!͊]fsLrm s?vt-6ݥN)a9Wted3,^Z[̄qa>@J p︁4MfS 9]@US0{!/I. qun7xx7;&&$V$4xInx~M6GFmpüUM.;Rc9q^Y'QP$ U}6ZTՇ̍|N Kv"HoJ 6c7x=NhsR~@ >/ճ\6FU#c:?[}n=M](|Րn(S:\j+ ݦ芶Q*onv[ڑb<:K?먉z ɍ9W@H[՝懾[UgwyUǤC6LR:EkeHK,?"{Zg&w>z1nZS2YeA.K*WR@-zMKݽ]g6FVAI6\V"jMt#Ys HbxA3x`ym+fZ_§F#Pr^܋']Y旡d^UYg:]g;o1A< @2toPhHfp'F@ɧm FgLR-:B>`)$Ӱ{e?Ӡ@I@Ty{J.+MFwA_QU Zh0')7Icy0 _~mAUؘHeٯ+hEl#~VRXv`8TS#_a|DP!o %7tIDҁ,h͗QRI|85p+[ZpWD  u!Aj({^ <#FhR?au)2]sT񛿿( HZ} *Q}G/m%=Rrư9.BNBUpIPgEw`D`"2ct$Ji;tA}7S[otqL9E4&ͣ[brWߕ@k]@}!mG(dK*O(m512 2u]mJh1bzJ q%s~x8irLk*WHKgm0%̦='!P82ln?^unS1 A.l 7K"uVR80H f"T/aZo_cu v,v 5cĚ!( "d)%v܉;ePvtB]m-f2!XfvH<˸HNxJj.9:QujۓRwgabe$4r7 1R*XkXpik[Nߋهm HvwI易IЇvN[b%07;1&.Igag-9vլHWu֐?&MY.XҞ Pp.Ssk(Lfͥesxf_5 Y7\L|NNN {-(=LNTJc.IʥbE\=?1t#0\3Gy٩B*okgy4=MiNaXMNʃ790:Xcoȿ MPoͨň,BۛySتP@[7=STրzkqÉN?djFǚ;` 76u3VJoSJ|o$Q$*y& 7jENDREP DELTA 303239 134673 442 SVN;@, %Y,(x^}T]o1|_/ATU(U@IG>dh_Gmg;â;^fu֭䓶Ҕ u]]}HiK3( I1B"Y&X<٢6/%12GIٟ"`0/hW)Fbl&a( {\_벥stnoJg%%.,: ^bw+/rXP-]'*GB36 l+>kxaW.WB]Y[m ,1f $*4u@kGѐ (-m+Ez ї IBz%o[Z?K= Î 8K݀g<˲tNVDlh\™hn}liLA׬KQ5/"LC&2axT1Bz!E06q6uqj>Ŵ$4xmdW;j|J A)BV+|_koW :=7g0&1.g'f\ :x1*m8ϸzO58>z=ݲ~&Ԁ^ENDREP DELTA SVN555x^SM0+FC8 1lTǎ]NV6( " ,i"A̛7oi+r'eo- YJm™\L +z5RUW8QUp`.<’sFix:R>R1]NUMԣ>i{A}AhI'1>CB\9_{W0FB9eA.K|FMR7S9dixJFO_{ b*B`.3F߱iQǼЋ΍f%q:"M5#bzBlCI57kуee%#S&!E6Tx>£8k݄v.'ۭ\d6BޖfA36_MV~}*Y4y,9M쭾/WeuwUCopW@mBk)(KxU*J3S羙"gENDREP DELTA 280461 5225 1031 SVNNF  !%)ENDREP DELTA 303239 135984 5847 SVN+. i hGdhOctober 2016, the COFF linker is about 7k lines and the ELF linker is about 18k lines, while gold is 165ENDREP DELTA 304767 76 1447 SVN2b*b^BC(= LLD 4.0.0 Release Notes ======================= .. contents:: :local: .. warning:: These are in-progress notes for the upcoming LLVM 4.0.0 release.4.0.0Non-comprehensive list of changes in this release ================================================= ELF Improvements ---------------- * Initial support for LTO. COFF Improvements ----------------- * Item 1. MachO Improvements ------------------ * Item 1. ENDREP DELTA 303239 142229 91 SVNqq F E(IE4.0' # The full version, including alpha/beta/rc tags. release = '4.0ENDREP DELTA 292934 147096 138 SVN[Y  nkpENDREP DELTA 280461 70203 681 SVNSYWVQ-& // Defines a version-related utility function #ifndef LLD_VERSION_H #define LLD_VERSION_H #include "lld/Config/Version.inc" #include "llvm/ADT/StringRef.h" namespace lld { /// \brief Retrieves a string representing the complete lld version. std::stringENDREP DELTA 280461 70897 237 SVN\6;!STRING "@LLD_VERSION@"ENDREP DELTA 303239 142621 388 SVNs"){(AOJi)}'#.4 *Iz*- C++ -*#include "llvm/ADT/StringRef= default; &) = delete; public: OwningAtomPtr() = default; = nullptr; }; } // endENDREP DELTA 303239 143040 689 SVNG  ].ENDREP DELTA 303239 145423 585 SVN+"@!A]J; [*[ ^>l>*- C++ -*Node.h" #include "lld/Core/Reader.h" #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/Allocator.h" #include "llvm/Support/Error.h" #include "llvm/Support/raw_ostream.h" #include #include #include #include #include namespace lld { void setAllowRemainingUndefines(bool allow) { _allowRemainingUndefines = allow; } // LLD_CORE_LINKING_CONTEXT_H ENDREP DELTA 303239 146039 66 SVN.sA}JJ.W*r*- C++ -* #include P϶w(yΟm#ėk2W π>fpVN}| .0n~= o namespace lld { = default; KindValue _kindValue; uint8_t _kindNamespace; uint8_t _kindArch; }; } // endENDREP DELTA SVNEKEEx^U]oV}&YwRW@iK6R@}C{;smEQg̜s$=betSst-ԠpRIB`7%I>淯p#=x1*aR! X (m7aK\Kf}nP/iʇǵ 蚇S H-0džYx.UQ\ϰ9ӊ_yPutENDREP DELTA 303239 147831 744 SVNS>?->w dBq -MzOiqsEFkDU4A*BX u<>t&dSW`}$ Z4w-(|_8Ey QRzcRKo<;d@4%:DpcJdN3+1_KcuVBpʿ{ENDREP DELTA 303239 148606 77 SVNT X 7ENDREP DELTA 303239 149109 468 SVN#  Z7Y bool CanExitEarlyENDREP DELTA 303239 149608 1422 SVNU,WP,?VArrayRef allDylibs() const { return _allDylibs; }vectorENDREP DELTA SVNEEEx^Umo0_qbcKv6ĤirbؑD9iҁ@j^{9?;;; 6I{/ߏ~w zA.3鼕cЂ'+NLWJIm})rkv)wdyRMʥkB2̥F¢ 2nù*J;w'цWZF; \S.EAjGqij/-9zY"* F BjQsaH aER d XVB#bd@HBfn4a$}B h\ft4wMaTEi-j@G I.,!Jj;Pri 79Wf~gc,r Ʈ،fw=rRbxnT^c섺umi!2ncQз/W7BdF[_.!gbCCrU=Iar^2<츺eENDREP DELTA 293846 12820 81 SVNjz g ^produceENDREP DELTA 303239 151368 215 SVNtM>eENDREP DELTA 303239 151613 270 SVNA`8ybxBg((d]7namespace {noexcept} // end anonymous namespacenoexceptENDREP DELTA 303239 151914 24 SVNaQ6q7R5 namespace lld { File::~File() = default;endENDREP DELTA 303239 151969 208 SVN#A_]hCw,]File.h" #include "lld/Core/Node.h" #include "lld/Core/Simple.h" #include "lld/Core/Writer.h" #include namespace lld { LinkingContext::LinkingContext() = default; LinkingContext::~LinkingContext() = default;ENDREP DELTA 303239 152208 22 SVN4U`uP; Reader.h" #include "lld/Core/File.h" #include "lld/Core/Reference.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/Errc.h" #include "llvm/Support/FileSystem.h" #include "llvm/Support/MemoryBuffer.h" #include #include gWpH3Sc@Ҟ*Mt˵5Es5ץMܲ򺚒]YGJNs{%pLL_h7 j-y0}=4k@fBe+⛚+LcsAW:qBCuv 1 .]*/K]eS0EeYrvӷ?lxu[q>\jMҷv0kX^Xk3w<ϟ#2v3qq#UN8Gn|ZB<ЛwGM 8]qdi /D,[N_ kR4-[lF@)݀v3;eU2Ux-ۦLwX_pBZlU ~pVtJD{;w Ky`M,Yhxŋ( T#fqA:U r@)tu\kGƅHTW$MW5K%$Ab"J,qhQȐYuBf] kprDRn`,pXZ%!}9x^(g%`D B@\bTYWYy%.iIԂr}v9\$*9Fg0\"qyhnj'Yv,c)*D1;~~QaG{vy!;]A#cVOt񡫡Jʖ=V9&僨K EÊGqV }FQ+)Cw5i/VIJ;XvM}ܲ'7X @lTg$NbGN kD..oXXdN=ܮ˒sI#m㷵=v c]ou"HB^nBpڥ:A@_EVJf%@|@]:;@=T5ve[ї(dz  Lo$<kþqUm^|7 DtA͔}VaNuN'U6юy< 2[W9>۾׷,(,o)oE5GOL= K=)p-?z/2<XK$r'a|r#E˃/_7='O:/wB=Cr`7Hx'u6gx^}TQo0~8uUEC*1=ù U$H}}/Sloo>i<&M88OѣNz}n2v5~n~BLۿn&2B5Qm;=|_Fᅒx0mt^Tv嫶W*HNpCBė>[a,,s ] g xȚ6ݢK|xt`#8o{Hd?|˓%ZוOhX#L7N֌kA8֖!SQ"Eɬ8zKޑb!Ð+E!{(FSTs5 |Vs)<8jo7pXunVQ!7CE:)[:JU _P*-yKj<0gVU~Mm{{ ]yN.-"w~C jV1$Ю ^EC!C2r+wBy؇ENDREP DELTA 303239 158135 834 SVN\{)n(j)4JE zMlxpected buf = c.getBuffer(); if (!buf) { // TODO: Actually report errors helpfully. consumeError(buf.takeError()); return nullptr; } = llvm::Error::success() = llvm::Error::success()xpected mbOrErr = member.getMemoryBufferRef(); if (!mbOrErr) return errorToErrorCode(mbOrErr.takeError())xpected memberOrErr = sym.getMember(); if (!memberOrErr) return errorToErrorCode(memberOrErr.takeError())ENDREP DELTA 303239 159511 1073 SVN9L[KXkXC'Hwof)u+L jlcVZ::success::success::success::success::success::success::success::success::success::successENDREP DELTA 303239 160615 1226 SVNAHnmN:Sp 0}v-#v#f(TOj89Kqx< 4 1 1::success::success::success::success::success::success::success::success::success::success::success::success::success::success::successENDREP DELTA 303239 161871 674 SVNWiq'q?::success::successENDREP DELTA 303239 162576 1171 SVNo"@/?<=<=y=6 s~e3lM69-::success::success::success::success::success::successif (inAtom->contentType() == DefinedAtom::typeCFI) *kind = unwindFDEToFunction; else ::success::successENDREP DELTA 303239 164299 51 SVNGo ?0>DebugInfoDWARF LLVMObject LLVMSupport LLVMDemangleENDREP DELTA 303239 164379 397 SVN2D]>t::success::successENDREP DELTA SVNIIIIx^V_o6ק8+0v4NVcN37L${GJ8E6 Ȼ(f#(6ZqqI ut}t+ >'bo~(͎r,u}br̈́Zl+3$Z};E!BKXJ"19Y\|Xߌ7n W2n(+%]^ѻy߬O?wWͻ.>'W(($,˴2Ȣkyte~뵬遧VS>ZWen3{rT@os搃@=7%K9ZxXBRmy!s"նipY %$!Pߘ·nlkp8 pv2_p *i,<"OJd`* 2t946JOJUV.5AmJr ^xMȸ (]WG_ã=3,/5g҄;P03Uja4BIgwF~^aR&'ٝFIh3<ϛ` j$Bq*l>R KAȂV—C_YhWF&FufX'b:ouߞ#@[M4I/:=l[C0!TB? {۝†qq;oCjӌ:$zHCpC7pCpB7]h(o/!8E 9dRsvہij}P%tӰC2Cť LsȹCh殗_؅ٝeԋ99z-CAE̘65p.4z뚋G~ݣŬ ƨi >+5g͙ĥZ)lxdeߚZV:ŸaM{4G},[Ok+G&;G[|Ƒ&rb?ENDREP DELTA 303239 165639 1101 SVNF2=192+P6hO 7pD<~k;DebugInfo"llvm/Support/Format /// Real file constructor - for on-disk files./// Dummy file constructor - for virtual files. MachOFile(StringRef path) void setDebugInfo(std::unique_ptr debugInfo) { _debugInfo = std::move(debugInfo); } DebugInfo* debugInfo() const { return _debugInfo.get(); } std::unique_ptr takeDebugInfo() { return std::move(_debugInfo); std::unique_ptr _debugInfoconstENDREP DELTA 303239 167087 227 SVN ) !! ::successENDREP DELTA 303239 167345 542 SVNCL QrQ ::successENDREP DELTA 303239 168409 1996 SVN.PkO27?k-r{P~Yx5~4.R"x^OO0 Y`$D&K׾vi;M$ўڷO>﯍"0ډK Ô ƘhY dLo5@#Z<4yɉy`|]!3XL@z[$/p#q"LiA3;%(wgkXjgܝ1vENDREP DELTA 303239 170437 583 SVNS0<F1UxD/DebugInfo.h" std::vector stabsENDREP DELTA 303239 171051 589 SVN+z'~&GzH6*P}o=n|::success(); p += slc->cmdsize; } return llvm::Error::success= static_cast(sin->n_type & (N_STAB|N_TYPE)in->n_type & N_STAB) f->stabsSymbols.push_back(sout); else if (sin->n_type & N_STAB) f->stabsENDREP DELTA 303239 171671 533 SVN\7:?:y6alignof(T) == 0 &&alignof(T) == 0 &&alignof(T) == 0 &&ENDREP DELTA 303239 172234 3211 SVN]dlbt{2dWaj6'(+CSs^re^!3MLi)p!b2i\}anb&LvL|{HloU}'6InxY1UM%K@bxe ii x^Vs6~{LsҗI2zʏL\o42sb$ޕdzhW]JZ$%-%M'sS~8gbUBۆTb=S'T& %hu ^fN G@p,B&X8!ΌRABAJlߡ -@DɈd3$Q0W qI/F*)JLӂGwnyr=1)h 'eosLv<^P"I& l ÒR)]2QI"&MW<}1ՊaD.ՎS k6Ni ;4D l{/ 6B֍p]1c27-W.e:oோڸͯ~[[dmx` [F Jmv#p˳ܔ<1-c=04z=3ag[ΐ6k=\ݲHP(t홓`cw{}2OIaw:y(.zoT*QdZ0:_s&x@>ΧjAJ*v^.Uimp䋰!]_]L,묽>yvXv.`ɴVkfVI뾱NpЧm t}UֵJ_֯c8zv,C?}~Ǘgjf(P`*jQB5"F-_<nཛྷ92B[h-@7krAxQXfj9Ӭύ mKUdW0>kGk /a_{塝r7iT^J抷Ytsao_H/Q-tBR:wu^P1-؛hA1ä1cN+PNe^djeG{ENDREP DELTA 303239 175476 2903 SVNRl#Q!|z~ta>^ l>}JsbUTFof5vTOQG6Zj[4S+{o.ug0L@4x^Y{o8?uYto@뤏E,u %:F&Pʖs Hpyy,Y.kV΅I-.pPYa:C<] ?8 Ed>KSx^h>Qa8|g_&Max&iCgo#')SetŒ[ +2)D̬bB ͭ`Ȗ-x5L"-KůT,:]v~ή@OK@I+0ׅT4pų.pcL k<@<1)%RXv!f} AlصiI >(Jsh Fωhf.Œ;g3YX2O=φeJN"n7$`Wt 8?.C6TDF? j1Uav-[<чS cgU|n՝R,GeZM jaQoTahax#"Τ#]ӆ>B#T5Y%9,F| p 6KmPnaׂKjAq *X6b5|6-uR>B~nibx)Rr 6SX7,ؒ"ol Fh[Qw{?=?4q I aL7}\a4,F{1K,PDVњE|3Yf>KNfPq"U](OWNp(QiNb(2*"T&mYf-1sc-znQ %BbmbEl u6lo{pζg::<:¬˟_~SI휩&J"3{ `꜈ QrYѬL f;1U[)5i)9Xqs9v4 vT6Z앚xI#\!^9AA4&y"ɫ M%횅Pą zϖЬֺe8YZ&M-d`U86*]8%803t3\݌;Gb.)U !>X^|~w9tS,i)WYоD$Ҹf#pPfXWi*)+[oT'! ѿE;`'bQȞ6j=Ut.WV?9q EӍZNH(h'P95_OT)Kѥ"#!# mEH4g: " ˙sCA$& 1ƥl~mgX$ ZyJ[t{PΣ4ENDREP DELTA 303239 178409 4922 SVNp8DB& "vB8T-TBy2%Vdy5~ ,&?FO0.F u~~(vGm +qLKMC-#x^ZmoH_14-I\䵗&9-v,mmeɧe#]8mC"K|!9:brW'?~:ϲ| )hwl-Nä(i&ՠϳ: xpz Y'X.+ޟyzCM x0bO 2|>xu<1siDI3ɣ" pJ#2r,mg}k1)7~Y$>"H BU1A"%ЄufěI6zzZ5yG3)OS Qh-:ך Y89o?:R _3] e$1m; )b<v< 8'pgd Dzyu՚=7ם>|rp9j9E D"_3-dcqHBOtLl Q>&Gl/&Fj V-9c`kO lLb{I.Hͯ0oۛX ^OD2rF6 "%Ut(PPC5V:mbg yG' Әl<&wS;J % ,v54oAҊx7+2`),L";%7$_0hMN4 n $';AlݎlEӔʄqw9q((]6ӟݬ?;~rN-| ?\a9)D9 QV>kIE0QWld z;V_6$[G.3VPFIZJ:M"0( &[IR]Hx6ߖЉ;RSix:(gBW~pe]fS) ݖ-[n%L* 6$:e3s\ 8D $Kϣ .mVqL%$$R;+Fhߙ.,m2WkNxד~Nk[aE]_5{3J@s79 X$C(^fu)9^rijKbu!,:?$yTL4j!8 (E0K9duD+V-#|h5']:OLfY [?n;+{Jn? B_9m4@)EIR?L_PO+16%+Cѝl:g?1#,‘#ĔGYPa^7/݁4w,A0S9ZY?m@R}ug$B1چ(މSNWؿ,RmN:R8& +DlϾ*E3d5RjXQH^uҰ_v D@:tfو6 Z8/ M'|Z)Y5!~.+[}[ s&9NA -HPwA7"*x4IՌCnl=Ӝ7;\v=K(rRlJ0|j]YD:1פ!6;xx2|'^ɞI&/qQ]~"AX,u9-M0@ MRŏ ?-dq9܂F]NOFMm'pVՍ\Ge Z IZrqNPMB7:j7T-zx=D!`NÅ䙄N9:E ^t {]Op'p'晦Ӥx\0K z/JFez=9[,:@oj'LNyNXwo{-VW{6~' qEEh0Bm4d:*_=I'A\†9I՜a+ ~92U9}<NU$֐0r0;yjRI NTy_{O^l5GgBK9r[i/ڦGwu0֋קycuYmntz s  ;3b$ 1]}*pɁ0 ƩfdBJZD.#>cENDREP DELTA 303239 183361 971 SVN4 Z rYGmY io.bitSetCase(value, "S_ATTR_DEBUG", llvm::MachO::S_ATTR_DEBUGENDREP DELTA 303239 184420 1218 SVN&1 | FileCheck %s // REQUIRES: arm .syntax unified .globl _start _start: bl too_far1 // CHECK: relocation out of range ENDREP DELTA SVN"$""# RUN: not lld-link /out:%t.exe /entry:main %S/Inputs/cl-gl.obj >& %t.log # RUN: FileCheck %s < %t.log # CHECK: is not a native COFF file. Recompile without /GL ENDREP DELTA 303239 191346 29 SVN  8F97ENDREP DELTA SVNr{rrx^R]o0}WܵjՔTuELɦrM; fMTBXȺi{.{By8!ezȍcǁ  5 :*?L_i4{x mw֬ip -M ,|/dO6RjV͔K $)KdTKO(p}=ug%<>Zo>LP=a&BX0m4Yplh;1&n{K-ZM4[\$ۭDs%˄f-YQE/w"m OqӇۭ#\fLyoGu_}it[ϨWPQpݶyPdrURxlRv]O}Oo0 ƞWBU^V+:gH<sD`dv%"ۨEkގ݅Lq7۸En/9*YZ>v'13,2h:ENDREP DELTA 303239 191406 29 SVNeg  }Uin {{.+}}1.obj and inENDREP DELTA 292934 347087 729 SVNjj6i jxG#5440 40 00 pushl $421068840 40 00 pushl $4210688ENDREP DELTA 292934 347829 544 SVNS@-&ENDREP DELTA SVN<R<Gi6Ԛq˥zNeH$('F@ k ~hʋzܪ? u>W&4N-9Cs{dkRH09m&BZ )7̦hE2AʼqwbN74V:fa(Op,ґ:`|jK g$ʢyRSsJ(Ǘ'ﱤ n|χ%簪`h˽K{y yUZHd=JxTK;H^uW+6w\O. 8x1\%|vA832%6:5}L_uTz'@uwM^߲qiO H9z~k/rqNl>PA8džPB?XfٓC9Y`rZN_C䕵K )Uooe[I40hϿa|1NIEQq_EqP캃#(8}"Nnz9-!m]r}@)s У oZt) De+uMgUēPn~3{=w)uYCQv(U(ԺsRJ Peeⰲ%rx T>oŤ\5a]4,dɣ:8ejGjju?04V58R3GZ_{mv7ZѨzENDREP DELTA 292934 351592 384 SVNo\\ENDREP DELTA 293846 15137 424 SVNt  A3TENDREP DELTA 303239 191771 36 SVNUB  .AENDREP DELTA SVNmmmx^Vo0~v}Y]JqVTpT &W~&lKG>!}> 1EBpRpzʨӖq,{)AG晡`|A'tf<2R(W"rg N@g|:O֊?3T(""F&PJu`4q1&["őiQle&X=TVxP_JCڐE,ׂ"q4-؄;͓gl'ͽ|oE3i2h ȷ'$|56ѣqrx쑉mQHɄ8,Mm$!uk8, l,htUd0s!VΧ&hkՌy+kl}һf+^IahEσhz}hآ-u06!̜L:FMENDREP DELTA 292934 363650 264 SVNw[ a q T/foo.map %t.obj # RUN: FileCheck %s < %T/foo.map # RUN: lld-link /out:%T/bar.exe /entry:main /lldmap %t.obj # RUN: FileCheck %s < %T/barENDREP DELTA SVNwswwx^j@ ZYI12J K.j5كjwVr\F`f+cJ `:8)\r:v4v/mwW` )g[tho7.Ha{/*^uhMԺ/jq=FN~BRtQֹ>˜O)iafcȍ{Jsi`c{PWo!cY 4kmpO=݀4 ԩ6ئRreF^n"/ňR ENDREP DELTA 292934 372475 420 SVNm&ENDREP DELTA 292934 373971 245 SVN** ! 6TV 2.lib CHECK: order.test.tmp3.objENDREP DELTA SVNv2vvx^ks>&I'=Vxt60dGI8gW+ 'T vϞk{4O2~Ll.?W oEV) )0?.]?Dhݸ !/S[`x^%j%iK݅yşYF3?nt ?dg@'\b#j-:`hQZ͗yg[<ŋG5'*n{4a- A`lCvBh: ʁcϣw3\/t>ۧ)w8p092C/1+@;{bu( ܯ8)5ߎ7׸;mX([|\@#^ Jx@={u|?0@0q8xb/R{n.b+wMghs)v o$'wL.Wynʹ [O("=\8/ПP7%A$%$g(r4*ĘI^Aυ{ИPh~so2nDNUh~#N">{ ;gXu'eb2eQle5%-*DRAAhJ%yVzXڨ8sL#ǟ_tDd,,56:7w:m*>Y|,  L) iRt6ԅ:d -ُ'GV Us3T͋p蘍D)<-9s|&s;;cxSrي>dݯ%W&Xb[$<O*ZC8;1pC>'eYO.fg ]a/?p{}3JPD gIhVނ32SeڞZ΢ s…wTE^<_v,f [cIGO%e)XXpT4{P'bĤTA<\3? GxmP@C^@6_钜@1!́u@sc/g J qvVY5{lS°=q `z~sCLr%yŰWA$cgYӱ1}l8ޯkL)$Ep25M5Zo-rȢ.׮,0Q5h5#pќ?hܩJ9U- &O$N"K=ntۺI^@"yn61]SYW ;VAo $x@$6}_W42ih'c@wMϒ(Pa XN{De唍]UeMkv˪xm}ZtM:җ3sgqJrjݠe;GE:1mt."?J$ǚ%p8<;FyޏwxcM 4hh/Gg~:X{ӱDA‡Ëx3t&Y'zVeIv4sӷx >0U|R4;̎'[z Ga#efJ%,=oCωta0.IlU,* 6 ŒKR T$텴3h? /K&7L׷Sy-fwE""'Ʋ*DT[T]d2tLMa%+pcS2`5}wIJ5A00w * hZVvm\jo  uހf߅% 9 cg<٬5rc$r& L,'C|PTI! $7y\EwDP$wvm~bY__":N~~V،o 7.8b֣vNw!>O}uBxn$kGU<Q6Of%V\Xc37=diMҟhכ"lTҷi'_TՓZT )xNjjm-2*jؔ}-]_׃NP_PENDREP DELTA 303239 194714 29 SVN<754?lXr@,k6^%g*41f20009 c0f24009fef0cef7 00000000 00000000 00000000 # CHECK: 402070 000054ff6ff79cff6ff79f000f8RMRMRM_BLX23T - VirtualAddress: 96 SymbolName: bar Type: 20 # IMAGE_REL_ARM_BRANCH24T - VirtualAddress: 112 SymbolName: bar Type: 15 # IMAGE_REL_ARM_SECREL - Name: bar Value: 0x50000ENDREP DELTA SVNBOBBx^WO@gܖQS~XUB,Z) TlMْv slG3؎tq[):x0,)1Yc?D{b0$  \UߠE\ 'xxCO?u,3xR(iGdg1+1ya2wy;pB4qH #sȰUc3FT'DzAN^t8HW)ZL `soYf)I~օxTD quG=tpY@|e+cV%I>g!fi}iY;\aWSiȣ(<~1T fM]NZzٱ36vڌ3#EI&c(LVL6-aa'l%simIn H7@v!Jߋ3M7?YW9JGҾt'c璊ļiV|frkM[,oq]kfΗFqCv-V7 &Gng楷һf.,g(mhpSENDREP DELTA 303239 195717 29 SVN( ;4.{'MessageBoxA # CHECK-NEXT: Value: 80ENDREP DELTA SVN]9]]x^un0yJm )If5IKUK˘C-ci6D`sosy Kv(PS5P2+7{T>#gzf7ȥqMz+xɱp/Pc4ϭA8tYr1aRR`LYIbi?XA this is malformed archive used in bad-archive.s ENDREP DELTA SVN  .ident "bar" ENDREP DELTA SVN:;:.file 1 "conflict-debug.s" .globl zed .loc 1 4 zed: nop ENDREP DELTA SVN`K``x^VOA~"ZX&(Fnh4`pАxА]@#6]11$^=j@L?AL=x3ex{P_;vf7o9wi<( M3U۲[9q탽0u ^ 5wm'2o~]Jw,|o}|cz%sEM+%GMmǼRh4A9?]WӻIQTuf{DQ.Dbo.ު@fR63n dgƆB);0Q(LOQuH]Ύ:ҲژE|ńꈵxQzAt6)t{7T ͵E7x8z?o [Cp>([Bg; =Ya;g#djbߐ̲>';Br. ?t}\f?|SBpPwju?/s;:mZ3t_zXkJlda̛Ms;]u K/6,UI^ӭ9-,SxQ:S)MoRcSٚo)甮t%JGk,t\W~W+Iϓxx+rO*WDQI 33!r=ƿ ;S\xs?^SxxB_G}<} )Ss0SCt!t _/Ga;3l?~ 1ӝ ;i\h*o3lܘ ) HS 4{M9<8OݻrXc=k?1m0չ>SzGos݉\]."X YYzʸ(28Zh9.9jU2<>Ɏ򫻋YQcNF]VhH&)B+ZTl8ScvTt Q_^4SOUtAz\ղ=hqmRKCTں FLItFA7vβ6~Om75&/ \na-zOoyLx\hO BT{N17P j65ZB Aèk-+V=_^6mj٬[+)EX.UeXUqLunaqv"\/ט"%S+ g+:Іۈ5?M0n2 84QPE9o E^Z[7Dg,iqN0n?8twm\{'DZu }.c@^C>ZЗ\^BǾZA?a]sF ! t~I)co7?8>=;PPx^1O0[Ji10B"b JXKqDS*RlLFF|q€89qչlB ua"8!Fز*mF1DX9v6;ЩZvPczAzu5cIY+拧@2L-k$fb8&Ӛ%iQmJ7rLȋt* ÞNS V@?6wN߶Qݴ>}60efxn4ϐkэ&^)>m w/Em6|66ENDREP DELTA SVNDyDDx^RMK@}6A=,C=(T =z(ۦH=ك??Ÿ\wf7Z$7}9 `?}@&@ )*atsySJy~&c-J#`|X&CDIu`Aj8"Fx0 y(돝8k#-0.D<ƢXA!5^V*_(/xVϦ?n'"WVm+7,ʭE-A ͌:+`uMɧ|\ʨ"O{7>7;/ѣލZ:?'Rw`st xƻV3&p}5 _:ܗh:_lvڀ{Gdw3+wN/Gi}>ENDREP DELTA SVNcallq __tls_get_addr@PLT ENDREP DELTA SVN.globl answer answer = 42 ENDREP DELTA SVN^_^^.global bar2 .type bar2, @function bar2: ret .global zed2 .type zed2, @function zed2: ret ENDREP DELTA SVN%%%x^AO0 NЄЄv˺v(aB[RH{eLd{~6]e4OVguX$]w"RX jdd kۏ`\ծ5 Z8utIFVQkx,5$ul};.zwP'HiۿM9",\)mj8] irqoć2zm9׫d]kS\O }6ENDREP DELTA SVN ! .globl __start_foo __start_foo: ENDREP DELTA 303239 203136 167 SVNxyENDREP DELTA SVNghgg# Sample label to test R_AARCH64_MOVW_UABS relocations .globl uabs_label uabs_label = 0xF000E000D000C ENDREP DELTA SVN!.file 1 "dir/undef-debug.s" .loc 1 3 .quad zed3 .section .text.1,"ax" .loc 1 7 .quad zed4 .section .text.2,"ax" .loc 1 11 .quad zed5 ENDREP DELTA SVN.section .bar,"a" .quad _bar ENDREP DELTA 303239 204338 222 SVNM7'&b@V1 = b_1 b@@V2ENDREP DELTA 292934 392772 387 SVN  5i720ENDREP DELTA 292934 393172 392 SVN??F<CLrME20000: S = 0x100, A = 0xfffffeff // S + A = 0xffffffff // 2020ENDREP DELTA 293846 16954 853 SVN 7(y'DM |6d (_:BK?9x^]k0gn$iމdsP!.tm//~䄬lˈ||83| i2{_ & nF<3`+@Gƨُ(WFQPjr^DYfu<5z]qX`9[^]-| Go 't.x~ F+M ߁ER$ nGLR4μGMm[Ȫ1j1[G ]8R1yCCY0*6wXVҬYԦe^|]y@,4槥V#8"rS2k+nql+ $歈~Bl3LYhmt?~ʮ^L*s⿾ˣENDREP DELTA 303239 206132 547 SVNeo2m1B%Bin-/pOns?=k404040404000y // CHECK-NEXT: Value: 0x404040000, A = 0, P = 0x20000 // S + A - P = 0x20000 = 131072 // CODE-NEXT: 20000: {{.*}} adr x1, #131072 // S(y) = 0x40010, A = 0, P = 0x20004 // Page(S + A) - Page(P) = 0x40000 - 0x20000 = 0x20000 = 131072 // CODE-NEXT: 20004: {{.*}} adrp x2, #131072 // S(y) = 0x40010, A = 0 // (S + A) & 0xFFF = 0x10 = 16 // CODE-NEXT: 20008: {{.*}} add x2, x2, #16 // RODATA: Contents of section .rodata: // S(z) = 0x40014 // RODATA-NEXT: 101c8 14000400 ENDREP DELTA 303239 206710 316 SVNnn  Z\20ENDREP DELTA 292934 394727 341 SVN66t;y=q's2020008 // S + A - P = 0xfffffffffffe011c // CHECK: Contents of section .R_AARCH64_PREL64: // CHECK-NEXT: 20008 1c0ENDREP DELTA 303239 207039 70 SVN !  "m {{.*}}:(.data+0x0)ENDREP DELTA 303239 207140 104 SVN.T y "x:tx{{.*}}.o:(.text+0x0): can't create dynamic relocation R_AARCH64_ADD_ABS_LO12_NC against symbol 'dat' defined in {{.*}}.oENDREP DELTA 303239 207275 102 SVN"H w "v0rv{{.*}}.o:(.text+0x0): can't create dynamic relocation R_AARCH64_ADR_PREL_LO21 against symbol 'dat' defined in {{.*}}.oENDREP DELTA 303239 207408 105 SVN&L z "y1uy{{.*}}.o:(.text+0x0): can't create dynamic relocation R_AARCH64_ADR_PREL_PG_HI21 against symbol 'dat' defined in {{.*}}.oENDREP DELTA 303239 207937 107 SVN3Y | "{vz{{.*}}.o:(.text+0x0): can't create dynamic relocation R_AARCH64_LDST8_ABS_LO12_NC against symbol 'dat' defined in {{.*}}.oENDREP DELTA 303239 208350 71 SVN&  "r {{.*}}:(.data+0x0)ENDREP DELTA 303239 208452 71 SVN%  "q {{.*}}:(.data+0x0)ENDREP DELTA 303239 208554 71 SVN&  "r {{.*}}:(.data+0x0)ENDREP DELTA SVNJLJJx^Wn8}WLhօy\n,-Q$˿wDʲQ҄E9sxf(ɝL##&nSv,CdaSJ3o#NbfDa7^O;8+1ns0x-vvj CE6"_]:$+*"وTo)Z3W*y /i lzi|vH1}f(63]FQbG_h:“V>"Ċ `g_#XxTIɘ?O3c9FҢL*r޸=y!oIhBsKLdqv6~tbuI36kq߰U0p6qh ;u}DHkX8I |6XT `9$`A]Y~B:4n5:u5(,Ջ6>JSiרWą7[ۻhvr?  hKya4M \1u7A!2=`[UhX$IAC?:c%"O!ZpAWe 'D Qz%DTkՀ Ӏ.U`{?{\?ۥyE*{ [<+ÑaׯtlfSn͘YZYelɾ@B$E~VHꡚʽx1ĖbB) »[lХavߕq0xOǐr_(oXCl+Wĸ 꾄ݪ`cV7h<%pp jmn3轄;kWkC=ʎ|5Ot6[|/V&J1 - E4>q%h5 Z(ŷ-_cq^ENDREP DELTA 303239 208862 268 SVNu|9P8JLKK{h{eI$ӝ̖)dצm[ꀺD[l],<ѿ?E5钥Nڴ]8|48 -Kóm G P2D7d#EnJZHߒYOCr0x,J } ˋENDREP DELTA SVN/p//x^uQ]O@|W싉&՘>Tش 44 r\s\lk=*8,]V \u긶.&c ( E gjf=dwpLd EEN"$BBMiU|-cu'Y!Jm= lk•6Vkh[JI0P'w ŝ<=8Nf5t Fu|kLRC{{֨&Q3UFKWtk(V;Y$"}Y2ՔigJ Ty,rWq,p~i<`_˹2ˌXp WD**$*EvHȩ8;:.n:m^mڥ,H~ladk1'|ENDREP DELTA 292934 399431 536 SVNLb  HG-z max-page-size=4096ENDREP DELTA 292934 399980 543 SVNl  NM-z max-page-size=4096ENDREP DELTA 303239 210372 387 SVN50vDuNk~Vl+.0OA-DAj2M4 M 1ZC 8RB CP;D~r00a޻gßW=yXlpzyp캹dT_'OIQ,;dB]O,pV#UTny.^ Bh01 சt ;Ȅ$J˯4~{d)I(a{T*!Bb2^^32#L>/.^e9J- I)ks]ڶ;̠yW4# T5JSLlٽ.7 ێ쒞]xdTSم ?\PĻV[Qþʪ!E0ئB0'bQ$b&={E{r0i [9rd!q[8T %%9$qsw%$\X0~C){+|OGM"F UD.y? Q1@ʳmx͇8PR wyy 3 BEcCr\QG4U"Uj(AR똦4".Bp1 lطR$shؑQ+RL]LVu9M縛ѹu#:ʉnݤIMz}O&=f_~Ze uֳ3:͂X%ǻ|wuB^QċYfhO4jkehE)C2REZ00F6O+/| {~]¯H!0ѭ%C@ \Úk' &AVttK]'=+ࡂ'0>p킍ٸawS m#n= źbENDREP DELTA 293846 19837 880 SVNt! [=B|,XEx|Wx^j@SUlBTVQ RF1ږ{ǘM\f9|j@FT2BhfhgCAZ~Bt, '+~ЌMSeꂷ  l.|7o~~`Q8U_$w}.ZV颅Ҵa4E2|jTO9<#V"^/8($E"֝ ǽAz*\F.?^=Gd06O5A$S՚)×^Z*Dol.չ?VB$_%dH ,#BpYTa Mu$YX)a&XP˲D49x&=vpG^i-ޮ >qQNI( YmaAE~."Q:+28(anH* LW@Cr(LGENDREP DELTA SVNTKTTx^]o0+Tu7[f, uRؠvĔ&b´?;@ fE|>q9qۮu2fTRz˃`,N%$ WMLxBM'Ѩ"HEʸ 7peY5 =+>LK|m(CGK\^<_K:C6 X 6IDqB#I:L(4e1,mH N6yRj2*8*Z"OBsy`^'6>NɈMHHAp x ܂gX5%[#aD]Tgy~wtw4 g]o4*NqXYl:S ǀ09~wV@ rty1V\Kol] EB:U +UU5KY1[~Kz Buv h%E Fs(B[/Gap )A*9kv*.5,S#x_{ܹ5 J\O^zJ >?増BsBtz~V{Ш1RUBW58,Kx&k{zENDREP DELTA SVNprpp// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o // RUN: ld.lld %t.o %t.o -o %t.so -shared // RUN: llvm-readobj --dyn-symbols %t.so | FileCheck %s // CHECK: Name: foo // CHECK-NEXT: Value: 0x123 .global foo foo = 0x123 // RUN: echo ".global foo; foo = 0x124" > %t2.s // RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %t2.s -o %t2.o // RUN: not ld.lld %t.o %t2.o -o %t.so -shared 2>&1 | FileCheck --check-prefix=DUP %s // DUP: duplicate symbol 'foo' ENDREP DELTA 303239 214259 453 SVN   ZA_ENDREP DELTA 292934 401552 448 SVN N HMxM201000: b8 01 00 00 00 movl $1, %eax # REVERT: _bar: # REVERT-NEXT: 20ENDREP DELTA 303239 214855 166 SVNd[ Tbd.lldENDREP DELTA 303239 215201 404 SVNnnx^mo0SZU!J4Hh)0ZIӄB↬ņ>}@3r`Ɠs[]1- - 9 o@Bj&qdrviY0}||(e+z,2Ƿ4# "M.^\_ǣ;œ2 ɒ:;O}L֪_akҴWX~U} kICel #g R`"\}Ve,)2VvYͻ_`HfF5 0L7J!7h Ec!ܝu̾*蜈..tm[׮(k'>ѐWӻ8GmE%o}9Q#M\eF2q ,YL(wG%>}iFƨץM8l(d* g/eStӞ64 br$r>Nŕrb$q& 74}.BҬmf̂p8 < .%J:.8&,+gt v_V=vk]L3;![11:hC}4A^Lba;;e31oC˒Ɣy!RL V--S}e,uYj-|7l*&3Y`U AeZ咯բ* 2= D.nֵ8~ON"T`H`Eؠz)9hZHQnVJN¥H.EX\G)xmw$Ky7tslrE5JjCoXD;[EsݧLϝzUf Ty;zZ*jUe MoxV*VizauJw|Be4\eIy \:\McɔUV6Qt֕b2)c~+S)v]1I7Nd3Hsі!uCHqى"7NRW+QEJی^TKFwld9zf^S6ŀm; !\Ѵw^+z96( soRoj$}}'VՖt·vc8~p>-mVE튄&Y_ 5 7F;3uggyXac5F,wٺuR E<mì\w$^Mt 8=x4/?wN:®9YH. u{{?q{sٿ'?;Wa(3tG~hNGA>?(cBXr-YpTQX;*]ӽ.=l|r9ENDREP DELTA SVN[v[[x^Vmo6_qh,GR 3Ű l)+HIbӉ]%sSulJv# 09!X_@Hb$p!paP:%< X@3jE;[UQB_ltLX@-(x}38̟>=un<~9X̊AVdͥyZvەH%Q Y22!k<n`E4P,8 XheH3.-p!\kXкYV 5peg3Ho!5gVڌ eސTrpj˄;Ei&! !Wnu=JЭa"8DYѠB0Es{t2.qښȰ\/!' K O`brQFޡ9YI1OCejsؑ6Q ;vpܺJjvU1eɟ7I]Rco$K$fŲ=bm""͙J!~sp+T:+7`?K+YK*ђ ,wBzFDDY\/pRfS2XH6eJMa֔8EH oJ2F<&'<_'G(:c:"dZ4v ZR#߂_|2-LMRraL04{I7b?j)Ͷz_=v] G|ΣWesNƛEuxt;p5њ RVx.<zB=1@ahF%#䮷c`|*@|`Dة9gl"ѳb?Rx/L`xO̻ 5'xF[a;2{/}63) Z`:tElEgeȮ&pT޷;jF:wd!*#_2{'l?؟Kljfب[IWV]-0 [*jgȡ#5T {]m]LLǃ.)+&w>Z?5 QG- R6ҜENDREP DELTA SVN*.**x^mk0Ɵ_q/ RV,vUU3T躱?~Y) }M&( 7TG h?8o@WS?3jD ukIݐ ֯Gq_J޲N3aL#6t/XNje( )F桓$̶no p"̢yַ,$;1_b)UNa>q4hx#>qc.(|pHql|Fw,<*7Ke,7.oUt4ENDREP DELTA SVNU6UUx^Xmo6_qЭ"G0EA$ӭ6D\e$˒c<>ݑ{}@|9%T, uKaB)t] ,OI ۛ1 SGKs]h{ 7.(1ŀ\FAfGWX<4~|tU#+Ij4;rdH)l UmR|p; N#ڨ?11U6|~0Ka)K”%dK.Az;/j+Ej ]ǩDق \5%eOՔ"x?dFŸDHpAZ;x|N"iTv!JJÆWړ|(%v:+} ŌFrr GdytBV l$58#0YB@jYundNoA;+r׉{.w%1Y$̞SIjKyp+y\Tls3r*pyxcc\b 7m8pzm8~8x(o!ԛ6ԶÒbs#G ~iFsͣx}Fͣe׊&R2`h>u)n9=jh@D6i+TBlh4&74#0X*p0QϠmZ*4[VP0ʅ q"M@݂o $3@@|S9밆,(^IeG#$T:zmsuαzvR;W= (!銆ߦݘP|߱W*ώ<1 ؕpڈ!ځH"fNfN:\C+^IU촢L^`ߴ#jvQ%NkvrRVv m5y56n=JUz׃ D2iJsD՚BIuqYUh8 ^AMZʹwnEz:}]G,(|E)[jE9| S{ݪ)ZMv4홞cXdH+u}WsL*"k6DgX=mg&{txa|T.RnUm>13V8"1"E8u_KrWl&a\8>um؄!5gz5h;^{|]{&oأ\jI{K{uRt˙(R*gM"aF]ruWoYegɧ| H4 UI)ޔ9irȃB?q)hPPhܞ/$mvO4uQLSVV0TVkj> G~Ezl߆uBkXKF,{~ꖢU2*zS=Yw%{ݝ}UENDREP DELTA SVNhAhhx^Qk0+. jK:$4KB` #׶6Y8l?~n29;x ]&`g:𮊿1#WmFy9F F@XN羸F I[Dъ6zR`]Sۉ< >~( $9CpO64mծVгJHtrCQ LQ Uf<*Q>`sR HeP~" SI0=Z#WӌbjF]iG;Q1UR9bTD(|-gS n UqQt's!sgeޛ̂ɓ~\`is}X6NEv7MF\pifaXM.˧h>Wk [^Qq-ENDREP DELTA SVNJ:JJx^Uak@ _! N씦:(KCӔ%)gjܺc?~禩eB@zzӳ^)1̈TYSfl3%OCbS3f0_|d6#n'~P".s vypŅA M7`o%K;;?n}|C`m.|M<iX?n}2/9/ ݇_n ENDREP DELTA SVNttttx^mk0SU2BҴK[6 #D"INΘ |:?I0yGbX&e}/rF.J6D±fwBiTJ`͸ŴIAݫ6چFѮc0C,i1ρczb&p ?\_ >~ # Ni@ R\ LM|7.5p!9p7z.+Xxurh_5A:ТT̚9Idb]еrsg|;6H BHGf%-%Zf&ܚA2-'gU|{՛J#yՈOR8aeN <> -gpˣc&;ʚ*pt~Fʹ$%([PT[t9Qi]Md ,Fŋv޿{5x|wq*)S8-t{V}mh?yTcgc:lܯNޜB@} r<oC{3hO-uQTƞ';aRk1>w% ڬNh٭k*Đ.HA:,ËENDREP DELTA SVNx^Wmo6_qCP"1e^D-y"kw$eY~a%:=w(j5o:Ԟ` b9gYl'3F|mΩ$1l.x l4r8Yx0i!؅VsxEE1Cp55t|:;1|X)v(,q8;kCWMJC,SF"*ۋŰHȒ=+}7 8y,E)0 HR?OWs .ٱ1'a'}ŀ54@9CLsBgj6ir'Ks]e@;Y `.KVZEכWuOvLMNdj9jlotry7tsN[n!B 8vxKR8z UBY^u`&\ v J@C2-?jmXڶ x[fEꟼYIbn LQɉAdOF}TVP/žbG@O3cc8L0&iaQf"woYJv,܄f3&89j4ʤDX/I<h [ox,[×0O8wlZ`8M.oƓMrXNX} }LㄥږR_ua:(0/ܘ^"+xQ3ݼ~e̹ܣOTU~(V1RlTmENDREP DELTA 303239 222198 1083 SVNGl\cWv@Vq6 =Yx^U]@}&n@kI*VRW vc`MP V kL&%̹s̽XK6; b~? [w4h,lmx=fvFcc`c9G[磡}%dO <4fi.L~4 mQ6/J4"B(rC.4lLdBD(2#1Yynժ7Uu)Lg>86Q6f\T}G2 qPNpև O RQmp[]i00CŚD[=3ʞ9#c0'g_ؚ&I(OLR7Qِcc`I6QIjS-Vz((:]$!D0 r/opB,RI8ÖJWۉE%tm@VUxWܦ@^@7DJ&M-\!C 4P(':Tâ6aDe:CDEXoȜ# RRL[<  ®~QqC]~yO/if@jJMcB%hQL~\rQLJeVFEWEĨF/̟ENDREP DELTA 303239 223294 738 SVNLG  j]oENDREP DELTA SVNXkXXx^m_O0ePFFCIPu*cѲUKKh^פisί)79S 6 [B1-)%J+NPUMVt)ghYg b  |v[ue\``W"ƪbAD^IQL˻{>,Q8vZ%Ƃ]S d&&Qx%:Vho®~f*i ǰMcH=u5JLpc%JHu.&c'F-=8\݊ ZY7t+]ibK쒺;|ENDREP DELTA SVN%<%%x^Sn0+R89" A vU%"'',8v64RyŞ`y]d}X#MYy%ghdJg!$8`N(D`'YGzv6̳Eܾrz[yБZ dDhx;as ph;E6R8c,IJ.1-Kї~1KPA-H^tl$$uXSž^<`#@EhےMTռl*$dHpޠ\3q81Pu4##h gO߃J͖|3I =ь<4,+fGCtI!] 6=om AERٿ߾=!΃g$Lw{@ ˕4(:в]'7һ8[d1X!Uu)}8_JӶ`4G;n1 +n ^Ƹ>9cTQw_73XY҃gDZ"W}SџE92[I n=Y.-2%`а }K-qRZENDREP DELTA SVNx#xxx^TQo0~ﯸ!s$@4nL]'!^"'׮gk%~}/z;uD.<@qM]tA7>36OϹTkp$JL+ɽQ ܠ6,JܺVGxސ %(y5:'^YaceegByG Pi+^|AūnFwR5l;6=?ehh<8 0DzI͐8_Ձ-=IP$H(BO[s[{oO!v_kO?g4·ENDREP DELTA SVN"(""x^Qo0'U^ e)R&Yvk.K!GjlM >Y( ,w`2v`8/UI Uy{Gl.8ڌ򪱷BQ` V 8%ه0|{vRۉue 'ͿnWo2ZKUQ0]-`z{ePB*Jx)@ >G E(&Ns[g@Te+*xSli%L:r`(VD&bOX8ritu4%S"U{U:lPjO`Z wfXo>(:?>,E0dG@} YNK@ Qh^#M򲚮0MY\*$B-O5DI@ϵif8(x)ڌW6yv?Z>?Z J$ ť, <[f˘6EHƈǩ&`ǂcREL @I^JdJq5 MC\(bIr,d70acwE8P,S}O=,jht4WʪW]xXݜ4#+DyER2%|qZs#M( +:zTneHRt0E9X?AY~(e8AM=Y)'>EdsG6l݊jݎ7nVlN8rxyc.~1qK$ %L0E`ZO߱e.s,h9,u qGܻ^x8biZx=|G;*HQ]OE{^\_$M4KWI[\AVJ4 Dԩqu뀋0?ϫw}y>d+K#`l3^,Tŝ^qθp-4/IKa.+QwöIn4٧KDaoNǼ5.ĢqԅXh%gF/N\AYg`@˽u0z'@EKm}򎮖bV;>#]l*Gky+y }:,~h")mhM6stw#ۈW8|iENDREP DELTA SVNVVVx^U[o6 ~ϯ HU||C,)5g6`ٖm~(_6`"?h/OqS F Se`D\0Uf.C<<9!91MBMx#QGwҩrF eHx&O`Ցarn^aC@ Oqh[x˃9amT 4 iTWʻn0Oq&gmR vw^u*&*A=d!kE F|1sxZ9!O 7$24lj3>xa];~xx+?!:TԜ:TaR:@ ثau k7]n݋??(_<+2SV>Wc)\R)Y~ br:z72yX؇qG}{;g n4RgPZlm"ݦ5۾}7~6 :!GҠ,Hhm~ynlQ`ENDREP DELTA SVNlx^Tn@}W*Yr@C.c6Q#UZ`YXĮ;`׉ڷ`3gS8N$C@_q6;*g#'Y.e$`%29F\F-H)JZmRb"u/ 0B6Ƭ-1 %Dhd5v.xT*P+ +FHVʵjQneD4Qɍ5&-`_|/YEKTHizRFLGT\ |&9#V|ajUj*2{`.W\K|E9VW6$-Sa+uPnRE X,fx`Tv x:{A*_D!%G& =?":֥в ԏ)ߑq?SrZE`zohqFD4 ڢ-VUNSNIBSsC"7?]+N:d6>?2]JU -`?Pu5Mt;U-/}4v6=K+Ɓ71II7zeq+jfܧx\,-Z@J\2JMa)vfg Fe壡MFSת`OyG:,GJ8xDU[T2]!X~;}w; ENDREP DELTA SVN  x^Tmo0ί8UBI4A[ڤiBN7bCCh-U?-B"Η3]: , MmK"ƩڗtN$ořXeB(Ylڜe<?$,$ fR(?0F?o%)X֟XZ U Գ"0wWiG$"DȨ89ЌMfːrx BJkQ"$l/@P׊* Jb L Lh0& }hiOB VE ^ps9& ʧkRq 9mF+R[T2_PAS)L9OF7BzP\ˢq2-@5I9(qa9lO}/+Zx6Neʼٙ |^"#.dЇȜ{dhLJVkg:o,YRqn@'T3{ͫ+Z쯭}NOȽwrgZ۰3o0܇mNqcU (?ʟ!dGrq@_ݘ F4\GwxMbꖸǺ}\ƅ٥7\fuou#`x>LnO93OLс{<C'tǩ z41e7[le}Yӽ:"zx9~xDcwxwWf(ž7)v׽ڞ>7+,Aڇx:8R >Ngl^B+h:_s^Ghz{r,ENDREP DELTA SVN$x^}RMo@+b5Q8DH9Th:q7lRvA,`׮"IJ;o{3;!,7!H<mS($2LiL Ul*䱀A1WEe͐0JvhO74 7 >=z<QDWшFnD=xY8 BLIXW&.|` {{َt5I?˓z9:$7uFbr=-D_emDENDREP DELTA SVNFx^}Rak0_qZ)N0Ȳ,-,Ma߂l_bmYƁ'mLK:=t 20ub F{ת?(aEam;-\Ono)L#C,@844JiLC DT='t7+Z= ӕmA>uYG.~<ܬX#J4ag\(VպZ5U`X\8ړ Fpsg@[PyotH; !^hШg+E]iYʘ=w!D^ywİI lzҦmxiu@UOLr".ʾ!V]skov*X)Es "- թV0*I@vS8XRVo5H2zgax3,4;sl6JnMl^ u`g2IirU+x x<9710Pxd])ta$?VGENDREP DELTA SVN,n,,x^}ao0W&UlNh>@U0:o\cY]ď眤k'EQ{޻g3] k `-^'0gD+-gJ+dRγ&Z30'-ۢc,Mli4J&c~_.I=x{S•]/R)*bYcJ1ow (Dֵ@3k%V CU N  N)k b:Kor-͆m{Vui{ZmmHA@N: 8֢ Xq!;@wwi\UPp PTjȋj-\ԄA;ؽrCD%V\BNڌKU0>YHA0b7⑱7t7F(II{+ܸdN[\^y  /zizfIAzlΧs+;Mn}6FosiYCOϞa`Jan>„n:%D> Dr:˃gGAWO Xj:u, n1$>:z٢9TF7:%I8cG(dW"?GOv^@%o.!'I1,AuENDREP DELTA SVN x^}Q]K0}ϯ RL@.YIiRmlyhu0<?rn)M߀RZ2X#Vif*SALQy"zh&=B1 -W^JQ;V$_ω,\0D@ n1'ywL29 #Xm5V 7]"e*&\Lx^CeFI@R Tf5 {bQ*j?m)P[@|pƀJ{=<=rr a>un4(06U]`e|F&n F┧Eilm:#nǐX0Y|CӗEIty8C&ENDREP DELTA SVN&5&&x^Qo0)Niԕ" UNrm;6𜝥tZD.wwvuRn \ vWNAh+QJF`%p2B)<*SJ!  è3;eyCu%,p˫ZwT}VR\'MZPӛ~@ڑ{xtuEvy[a׀Mj.y7nq3J7*,IL{zmH}Ar8C4I0,R~"m|'!55QX|vYwe10=}x=^O~%~G5xOѮ€U3PIEȵzim=@->>IglO3DO ;NG1Q M;ްHENDREP DELTA SVN// REQUIRES: arm // RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t.o // RUN: ld.lld -r %t.o -o %t2.o // RUN: ld.lld -shared %t2.o -o %t.so // We used to crash using the output of -r because of the relative order of // SHF_LINK_ORDER sections. // That can be fixed by changing -r or making the regular link more flexible, // so this is an end to end test. .fnstart .fnend ENDREP DELTA SVN)+))x^QMO@+&!6S &h8 551#($xZwyvޘ,} |O1Br+*E!\MXD(EV70sqn{~<2J^@DHu#؎yu%ø(*b2Mx=f{)gV!B=wSOH9i&{\{Yw 'xa$)Xk=?h6`Pa*_@iF][^tV5cJoC$հM e۠ENDREP DELTA 303239 234826 573 SVN >[AaI|W<200040 // CHECK-NEXT: PhysicalAddress: 0x20200000 // CHECK-NEXT: PhysicalAddress: 0x20201000 // CHECK-NEXT: PhysicalAddress: 0x20201001 // CHECK-NEXT: PhysicalAddress: 0x20ENDREP DELTA SVN// REQUIRES: x86 // Check bad archive error reporting with --whole-archive // and without it. // RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o // RUN: not ld.lld %t.o %p/Inputs/bad-archive.a -o %t 2>&1 | FileCheck %s // RUN: not ld.lld %t.o --whole-archive %p/Inputs/bad-archive.a -o %t 2>&1 | FileCheck %s // CHECK: bad-archive.a: failed to parse archive .globl _start _start: ENDREP DELTA 303239 235412 22 SVN9#htgqT0x'J:MRpxxF>;&w=?x!:/zL+zPF r096 # CHECK-NEXT: StringTableSectionIndex: 420000 # CHECK-NEXT: Offset: 0x10commen30) # CHECK-NEXT: SHF_MERGE (0x10) # CHECK-NEXT: SHF_STRINGS (0x21000C # CHECK-NEXT: Size: 813018 # CHECK-NEXT: Size: 72 # CHECK-NEXT: Link: 54060 # CHECK-NEXT: Size: 425 # CHECK-NEXT: Name: .08A20655320000 # CHECK-NEXT: PhysicalAddress: 0x206553ENDREP DELTA 303239 235463 536 SVNf}=|]s{C^b!sS|~X`:Kw=c!oRE`: 0c1x^}Ms0Eoi|J~dNNh v v!y F=Џxi_Ee)Ql-)Ec!F b8y\eqm1}HSqRđXao$bh#~^Y ",'|1䵦b4֟#>q[RKhEa fxvg[)NRⷉԷfL J8>X~3|:7)u)74\1(3&kǹ\)UDQe:n1pKjf#FyuWɌ⯟jU~gENDREP DELTA 303239 236280 363 SVN8mXlqTtTviH ?g!)#iP8J4*Xy Bx^]o0+4um7nVhPۀH&"JFS`>4AD9y;4;^o!I'ld]%E%#eL \E \eD{_*e财o!0뷷:6vlTI\(n*{Sqfg%4H?]i>CLk [nr~[5!a \ 1L;"Zہ8M;/k-G$Wi160U(H87qا앫B#ec.-b)ٙ `GsGmeƉN޿Z9egTd̗wC}#esm>(LD$p[D0ʙۮ@|ң0Ca9S =țHfeC%'Uу =ENDREP DELTA 303239 236672 29 SVN%C BYqZowR75H/L&2=Y?3!up566 # CHECK-NEXT: StringTableSectionIndex: 4comment # CHECK-NEXT: Type: SHT_PROGBITS (0x1) # CHECK-NEXT: Flags [ (0x30) # CHECK-NEXT: SHF_MERGE (0x10) # CHECK-NEXT: SHF_STRINGS (0x2100C1 # CHECK-NEXT: } # CHECK-NEXT: Section { # CHECK-NEXT: Index: 314 # CHECK-NEXT: Size: 32 # CHECK-NEXT: Link: 5434 # CHECK-NEXT: Size: 425 # CHECK-NEXT: Name: .5EENDREP DELTA 303239 236730 425 SVN ^PO/q0?MNU6x;ZZ9uL[|1}0j+{--.2aW~jMENDREP DELTA 303239 238796 165 SVN:y ? ==;=// Check that we don't crash with --gc-section and that we print a list of // reclaimed sections on stderr. // RUN: ld.lld --gc-sections --print-gc-sections -shared %t.o %t.o %t2.o -o %t \ // RUN: 2>&1 | FileCheck --check-prefix=GC %s // GC: removing unused section from '.text' in file // GC: removing unused section from '.text3' in file // GC: removing unused section from '.text' in file // GC: removing unused section from '.text' in fileENDREP DELTA SVNIKII# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/comment-gc.s -o %t2.o # RUN: ld.lld %t.o %t2.o -o %t1 --gc-sections -shared # RUN: llvm-objdump -s %t1 | FileCheck %s # CHECK: Contents of section .comment: # CHECK-NEXT: 0000 00666f6f 00626172 004c4c44 20312e30 .foo.bar.LLD 1.0 # CHECK-NEXT: 0010 00 . .ident "foo" .globl _start _start: nop ENDREP DELTA 303239 238992 105 SVNz&y%9?Y!] trtT&x202020100C3 // CHECK-NEXT: Value: 0x201014 // CHECK-NEXT: Size: 24 // CHECK-NEXT: Value: 0x201000 // CHECK-NEXT: Size: 4ENDREP DELTA 303239 239128 667 SVNFFt.xx`1K7YSsx^Qo@+ni}JU&6bM7ƨʊCإHfˋùs/O_p]}WeKYёY)ip#;lmObt+\\f2?+Oĝ HűI䀪z_ Bq& PX(xFb Q6U=4{J.CR(+ѿ/ [ڠ=ffwJxw58F a#Gmn`89xrȊ9 oJj"C{`B6y lpyYⅫbKq"}=ENDREP DELTA 303239 239808 384 SVN7|}(~d[Q8Pgx^mO0+nbP[^CLIt$D1&Tva @}hosN0B`E}uY pfwfCxH9>9CMo7xyŜ10@SL ]1M(;%'3뽖:ގ_==u 8HE"A)fU>+'e#@f8b~u++ܤ^-OP 3QU2v[k?$=6& +HfJ3ӪUU#!q&<RN-O9S +7n ce,hkS|ƸM7;uO,ZiKB+Ǒ˷j]k= stENDREP DELTA 303239 240205 397 SVN|H } ;|k|{{.*}}.o:(.text+0x1): cannot preempt symbol 'bar' defined in {{.*}}.so call zed // CHECK: symbol 'zed' defined in {{.*}}.soENDREP DELTA 303239 240615 391 SVNvm1ll{{.*}}.o:(.text+0x0): can't create dynamic relocation R_X86_64_64 against symbol 'foo' defined in {{.*}}.so ENDREP DELTA 303239 241019 364 SVN[i 2*11error: cannot create a copy relocation for symbolENDREP DELTA 303239 241396 494 SVN]+ c a= a{{.*}}.o:(.text+0x0): can't create dynamic relocation R_X86_64_64 against symbol 'bar' defined in {{.*}}.so // CHECK: {{.*}}.o:(.text+0x8): can't create dynamic relocation R_X86_64_64 against symbol 'foo' defined in {{.*}}.soENDREP DELTA SVNWWWWx^QMK@Rz.I "m(jւonwCvUNZSЙCyoޛ `=,nf<9l1 @5]@ .r^#55D>Bܧ\I&PU04LE2&Dֵ )yj f]9|*Qx@&F*`,˓\jSl:qm-6M,~b<d0dxJwbSDsY'JX)T"_׆l?ö}YժLѶK]kb\N@XS:>{}ofW۠y'bK ^;(,wǰ~KQENDREP DELTA SVNLNLL// RUN: llvm-mc %s -o %t.o -triple x86_64-pc-linux -filetype=obj // RUN: ld.lld %t.o -o %t // Don't error if __tls_get_addr is defined. .global _start .global __tls_get_addr _start: __tls_get_addr: nop ENDREP DELTA 292934 411801 469 SVN  M?UENDREP DELTA 303239 243356 62 SVN-Uq-T-T// CHECK-NEXT: Symbol { // CHECK-NEXT: Name: .Lmyvar // CHECK-NEXT: Value:ENDREP DELTA 303239 243448 355 SVNRN  n`rENDREP DELTA 303239 243816 544 SVNt 1*.TV RUN: not ld.lld -v 2>&1 | FileCheck -check-prefix=VERSION %s## "--output=foo" is equivalent to "-o foo". # RUN: not ld.lld %t --output=/no/such/file 2>&1 | FileCheck -check-prefix=ERR7 %s # ERR7: failed to open /no/such/file ## "-output=foo" is equivalent to "-o utput=foo". # RUN: not ld.lld %t -output=/no/such/file 2>&1 | FileCheck -check-prefix=ERR8 %s # ERR8: failed to open utput=/no/such/fileENDREP DELTA SVNe.eex^uS]O0}WI1s+BvnՀ}hso9t#7G| FG7.!D&\0 \UyO_,eДF 6+l+ԦќYrFyZY$yJ==%ĚY5.1T҄a0 Cop~~'贀QuڝS:`qΊCw1l쏵dR0ߙyN:4pKm >MI*N]үUM->'ۚqYDKlt@k269Ԉ)jz#}3pn *k6q.u;74 B5m6V҉ny._3g˂G7dRSCKݻTߵzENDREP DELTA SVN&V&&x^uR]o0}ϯl3AVUHFRѐm&b'a5J@h59{=@޹-^^ & [X s*\ ~?$ˤ*xy${°P[83` v*u6_S֤VIy,ՊNmZENDREP DELTA SVN{}{{# REQUIRES: x86 # Test that we can parse multiple externs. # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o # RUN: echo '{ \ # RUN: extern "C" { \ # RUN: foo; \ # RUN: }; \ # RUN: extern "C++" { \ # RUN: bar; \ # RUN: }; \ # RUN: };' > %t.list # RUN: ld.lld --dynamic-list %t.list %t.o -shared -o %t.so ENDREP DELTA 303239 244978 835 SVN[165xr ~M An3v~}zO~lo # CHECK-NEXT: Value: 0x20 # CHECK2-NEXT: Value: 0x2010002@ # CHECK2-NEXT: Value: 0x20 # CHECK2-NEXT: Value: 0x201002]ENDREP DELTA 303239 245826 256 SVNo)*{{.*}}.o:(.text+0x0): can't create dynamic relocation R_X86_64_64 against local symbol in readonly segment defined in {{.*}}.o ENDREP DELTA 292934 414329 334 SVNTU  +(,20ENDREP DELTA 303239 246408 78 SVNgiij{]Zts20205 DEBUG 0x0ENDREP DELTA 303239 246514 543 SVN - \{ ,2 # RUN: llvm-readobj -sections -symbols %t2ENDREP DELTA 303239 247415 820 SVN9@u' c4:x^_k0)"=ulP-tOÚiF7g5+$w½'')XȣtOv,,/;~  C#/O&9+ Y?37Ttj6' Q gGKs7&:owLta; ef,;h-Mk fԼ0[YSǪgu'1<3:/V1"3l |R⫵k JSS iM1HH*sY7n;aZPlIprK۬&T'6LkMtVC)֢ENDREP DELTA 292934 415872 582 SVN)) N MHaMF60D 00001B0C 07089001 00000000 // CHECK-NEXT: 0020: 14000000 24000000 E00DENDREP DELTA 303239 248248 377 SVNhq#pp{{.*}}.o:(.eh_frame+0x12): can't create dynamic relocation R_X86_64_64 against symbol 'foo' defined in {{.*}}.o ENDREP DELTA SVNjljj// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o // RUN: ld.lld --gc-sections %t.o -o %t // RUN: llvm-readobj -s %t | FileCheck %s // Test that the we don't gc the personality function. // CHECK: Name: .foobar .globl _start _start: .cfi_startproc .cfi_personality 3, foobar .cfi_endproc .section .foobar,"ax" foobar: ENDREP DELTA 303239 249160 502 SVN[[6k`!A48 011b033b 00000010 00000001 0000feb8 # ^-- 0x20000 - 0x101458 0000002c # CHECK: ENDREP DELTA 303239 249675 438 SVNzz \h 98...00000d9ENDREP DELTA 303239 250126 321 SVNAE  jKv200158 011b033b 1c000000 01000000 a80e0000 # ^ FDE count # CHECK-NEXT: 200168 38000000 00000000 00000000 # ENDREP DELTA 303239 251278 1183 SVNEknmsgtg\b;KNY?I%dc2WyKvSWyLuWWyKv?zYR"#[x^UMo0 W`J}x $K7tð[K ,Kn$5EM#$29" E\\\].>vߞfWՇ,pߖ ֛uCj8"Kyy[|܇Xۺ,(#WXh#f0 (25(`9ag6jɺ˪n`R>*-HvvF("rZLP8SDI|ŮkFilA31m>BYQPVUS-~UP-c\C\F5o89 ؋1" ? &DދBh!}傜E!M !15f~4O&͹ٵ#{3T4B`ry-63X,2آXI &՜VOM#CVL;_Nq| ~Z1#ho!S^X\<-jJY"X ?{mcn/sm}C|O}ENDREP DELTA 303239 252474 211 SVNBy R xP1PRUN: llvm-readobj -t -s %t.so | FileCheck %s // We used to crash on this. // CHECK: Name: .eh_frame_hdr // CHECK: Name: .eh_frame // CHECK-NEXT: Type: SHT_PROGBITS // CHECK-NEXT: Flags [ // CHECK-NEXT: SHF_ALLOC // CHECK-NEXT: ] // CHECK-NEXT: Address: [[ADDR:.*]] // CHECK: Name: foo // CHECK-NEXT: Value: [[ADDR]] ENDREP DELTA 303239 252698 31 SVN T&Rbx1[SE80D0000 01000000 00000000 00000000 | // CHECK-NEXT: 0030: 14000000 34000000 D20DBENDREP DELTA SVN9;99# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o # RUN: ld.lld %t.o -o %t # RUN: llvm-objdump -t %t | FileCheck %s # CHECK: 0000000000200040 *ABS* 00000000 .hidden __ehdr_start .text .global _start, __ehdr_start _start: .quad __ehdr_start # RUN: ld.lld -r %t.o -o %t.r # RUN: llvm-objdump -t %t.r | FileCheck %s --check-prefix=RELOCATABLE # RELOCATABLE: 0000000000000000 *UND* 00000000 __ehdr_start ENDREP DELTA 303239 253166 179 SVNs~ ( Z&~u&200120 // CHECK-NEXT: Offset: // CHECK-NEXT: Size: 48 // CHECK-NOT: .eh_frame // 0x200120 = 2097440 // 0x200120 + 5 = 2097445 // DISASM: Disassembly of section .text: // DISASM-NEXT: _start: // DISASM-NEXT: 201000: {{.*}} movq 2097440, %rax // DISASM-NEXT: 201008: {{.*}} movq 2097445ENDREP DELTA SVN// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o // RUN: ld.lld %t.o -o %t.so -shared // RUN: llvm-readobj -l --elf-output-style=GNU %t.so | FileCheck %s // Test that we don't create an empty executable PT_LOAD. // CHECK: PHDR {{.*}} R 0x8 // CHECK-NEXT: LOAD {{.*}} R 0x1000 // CHECK-NEXT: LOAD {{.*}} RW 0x1000 // CHECK-NEXT: DYNAMIC {{.*}} RW 0x8 ENDREP DELTA 303239 253376 301 SVN ] &HV&x^mQ]k0}Wa{H9GkQ& 5fiI/U,B圜s?R)Wlu@A]DmPݒ5 f ֟_`#Y>j $. A ֫\1 h˔D&7hUٷ4o3XvYaZ=M~q<:@b{VX :Q41+{%4~lf,|rDK . V,dԇ *uⳲ\)]|:߅v 碡KY1i$FOծiomXOIHbA$6%=?m˺??ENDREP DELTA 303239 253690 928 SVN=1]04 h:Bd,\J}/IzZ|eXTx^Ꮪ0WbrSAv#O13w%T(ڭ }- {5-jP mMy1F~F@(6 _h`^o8 ɗl,/ɴy*2.}\U PO^ dd?_<4b<ϋtxc&4qρO`?hE; ck"ඛu 2/ 8A|X:v${'sS&iϺD:jƗlDZ/;vAԄ%ؿb{;׼򶄥l|gVItUmx(qQocp,d;ǞKM(p֧y/J$6'8:с݌TWjNr K'bU.ҝ;S Z-2 <I`T%Ok8l̏}q҂ `vL6L9^*v?yLu*p|·U=SL+z&)iiCg˔51-LZW^?x!ބbQ&&745yp8k>X-ݱ) *VTzVĚw>:[ än]vqs?tmTKсm,wF <uAB yy BG6#4S2tENDREP DELTA SVN2:22x^KK@g(wڤ 6Bm4MHG N3!w6Uds_;]:_*51H& `n`[6AE5@0:e|`)y$gaT>Do7G3d: H'26Ԉ֢=LD5A: Q\'I?%[E&G&ZoJO[}Z> z% ~Fpq!5g? @}[_m?.%űF5]犍uT>Z0(ENDREP DELTA SVN " # REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: ld.lld -o %t1 %t # RUN: llvm-objdump -section-headers %t1 | FileCheck %s # RUN: ld.lld -r -o %t1 %t # RUN: llvm-objdump -section-headers %t1 | FileCheck --check-prefix=RELOCATABLE %s # CHECK-NOT: .aaa # RELOCATABLE: .aaa .globl _start _start: jmp _start .section .aaa,"ae" .quad .bbb .section .bbb,"a" .quad 0 ENDREP DELTA SVNUx^TQo0~WZujd[V,h:Ӵāǎl}!ӧL_wws~k݁ӏvr$s@ Z4"JVop G YI*!<ó @>@$Uk9Ƃ/*316q^FjJm(7  }^hwm- 26aer`OfYr,4BiR()%uQ'9fuqTsKuet`p3np`pjQȅ!Ɏm^1|~s'rTiyLy*WJ,{1*faF\Scw{4jLě7`ׁ!_Ր-M濂PI%ڥ$ENDREP DELTA SVN7.77x^K0W\:nȐ@,тJf[6MIAaO {f)ķZF,t ĶAO+pR: 6"ĪG@Ȇ#Z9ٲVT_P1;+|V/bu;W2 7!_IӊRBB O y3HY-(D4f@iVJ -B,[K/f~Do8('!{/ɍҥ&heV*MڸGlQ!j> C_w%qENDREP DELTA SVN<X<!b@ LoW柀tWrֽELHpYn]RM A oE kK3'0g9y"J4`hf,Yjb_I BA P,Ui&JCH&J_3F O2k!0u`Lۣ{3,C8f/~`(Ȣw (O`FCl2Q6v z{Rs~{.-c ߪ3W㸧 ;jSZU/zENDREP DELTA SVNn\nnx^mPj@}+bhk 4&6URY]q7~|Wͥ9g^Wky:T#MPڤ} ~eZl7# mNrD|W0 =BBP!#Ҝ]88V~a*\OmE ŻwEuDE7ie<[r7C :(Jr7__l7/r6}C aީLyYX̺xk;G'qA:9|0@j+Reࠒ$8B0=G?dXNW a+dCUs;|~U; c, aS\e~';',$MaSee$1mRfsTMݧ筦h./b;(KƓdENDREP DELTA 303239 257202 363 SVN[V  *,/ENDREP DELTA SVNK4KKx^_O0şbvXKH "QQ<Cn[n7=K{O{Mp[0?g2c08((嬧nN&, ().v&ι_I#@ =̙'#X~P.xi!1 &\8+f W, Yzpçq_xNqr^uLB`[zȅK9LsI3I6?~/m 1~Ckлvf"t#k~ 5(݀A* I%4;KuJRR;i؝ENDREP DELTA 303239 259493 411 SVNE L r@Wx^͑ @>ŀ t)HEVwݍ@=J <8cL!x R4jD sWg Ѝ@HJ4w-C\\2%7Ι^biͥ@pe\0 ۸- QJo LlԬ'r]])3)s/'@bc(F(ZYSI j} ENDREP DELTA SVNOQOO# REQUIRES: x86 # Linker-synthesized sections shouldn't be gc'ed. # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/shared.s -o %t1 # RUN: ld.lld %t1 -shared -o %t.so # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t2 # RUN: ld.lld %t2 %t.so -build-id -dynamic-linker /foo/bar -o %t.out # RUN: llvm-readobj -sections %t.out | FileCheck %s # CHECK: Name: .interp # CHECK: Name: .note.gnu.build-id .globl _start _start: ret ENDREP DELTA 292934 422628 538 SVNNz(N';_,$Qec0q2_oT CL.debug_pubtypes # NOGC: Name: .comment.debug_pubtypes # GC1: Name: .comment.debug_pubtypes # GC2: Name: .comment .section .debug_pubtypes,"",@progbits .quad 0 .section .comment,"MS",@progbits,8ENDREP DELTA SVNx^Umo0_qRB҄4Uu֬Ӵ/ͰIҽ!iH!k4{WL0 F# ^f&S#HRE7va~d&@%냼)&CƳWr"xC?~_+ݫI?Z{M8h15#!+6q&)BO%̞ > 0`c[Î:o) eTΆvo6 ϩ%ԆGvW@6|+ [q5 n_ .=3_Z<.O@7u]cO?V'uIn=cs/޾e%^<ZTa*X?zި7ww ld7#[ցȓW#clqKfKhZb[#™ՌգjT?wnZO n©بIn0aK9%eENDREP DELTA 303239 260559 470 SVNEF  acb20ENDREP DELTA 303239 261042 260 SVN%/! :M;(4Wb3G^bx^uMk0 @:U]'5eP>m$uX؃im,tlx,t7{r3)Y<ޒ.e(;[K֩[n` "o$Y7=I t l }1h"#A&]EǺ`.ŁY$Hϳ?-!맠OF`vz=ck=щQN!DIRTENENDREP DELTA SVN%%%x^Vێ6}WC$ $f'q٤k(RZD:~|d k3C><طJ3FŮw+XJF0 2XobڟF>_&Es^.z7K"Xn6o]}ͥ]SYG; hY`% ;p? ׊*+fۻGOcDѫ0]NYl d"1t@&?(lƅ<8Jk5Au'T?9K7: ENDREP DELTA SVNRx^mo0)"[ChU6mY^D̠u٨?!N"٘\a2:M}C9B+ 1$X>J"/d[. '?#:1:I7R.c6 fDn%bq^/\j=ehd% #xhz>EDԴ,F"50}ogoC( ,31O "0|[2 -ArMf674_Lojyb3j^ p V@7i2a6jC+K&Pbpi%o"}Џͯ36QAt B3VHQ B}AJ҇ͻyӼO />`Re[)(! R },޹6 Yq^rJmChƳmMCb `ͭ G #0bt5_(Yo_=pweU<"II-\DCPDcʾyŊKrv;aQAENDREP DELTA 303239 262279 340 SVN201?L@%?ue|[<^CNZxh&{x^}Mo@@sФUV$M$%m=1PLii! 4.870 ADX[T͕:[f<1.ZƵMPB:nĠK'uEn2'ev^D_0"+uaZ3=>:u(xϓjuR)uv;)Y \2 o=Ӊ2 #IGUNrU3ί֟%>8vON >H;2fwXO|I`W|# EFENDREP DELTA 292934 427848 516 SVN +f*090 R_AARCH64_GLOB_DAT dat 0x0 // CHECK-NEXT: } // CHECK-NEXT: ] // Page(0x20098) - Page(0x10000) = 0x10000 = 65536 // 0x20098 & 0xff8 = 0x98 = 152 // DISASM: main: // DISASM-NEXT: 10000: 80 00 00 90 adrp x0, #65536 // DISASM-NEXT: 10004: 00 48 40 f9 ENDREP DELTA 293258 7155 375 SVN`iEf!5 YC202020B0 R_X86_64_GLOB_DAT bar 0x0 // CHECK-NEXT: 0x202020B0 - (0x201000 + 2) - 4 = 4266 // 0x2020B0 - (0x201006 + 2) - 4 = 4260 // 0x2020A8 - (0x20100c + 2) - 4 = 4262 // DISASM: _start: // DISASM-NEXT: 201000: {{.*}} jmpq *4266(%rip) // DISASM-NEXT: 201006: {{.*}} jmpq *4260(%rip) // DISASM-NEXT: 20ENDREP DELTA 303239 263367 1046 SVN{c'N&K`` pBTbdr_?<x^uQk0w?ݻ$Z {@uC!iYG.w_zۚ6y)_ "NQߡeDMcUpx蹂^²Nnf5><8a q &$*Q`@_`7Dq9 qJ$}_[IЧ};rp54Ǚ}ux{q;8X%C/cb%eGok%W}`%`1Rtb=&wz*㲜WX(X; /-x)?;- tލW)X׎Qb nOc'#"t _*QZV %Rl Tdw eʒRK8)^/x1=&_&T1\ca;kĔL+&MLj~#ٷFTCs J+#iJENDREP DELTA 303239 265014 642 SVN:-ts8WLVV Z 0>J}Ƕm=#wh}qF VTʶ !CWkh6:7&WggYX[|,ķPoMk}=d]:f5 ƱA(x^#4!Y ?MEPk&eˇ3Q+NsY׌Rta^>OO2.&,Vu'wP.].m,wƧŽ ֘bAΎYiOE,I؂N kWa.2zFENDREP DELTA SVN   # REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=i386-pc-linux %S/Inputs/i386-tls-got.s -o %t1.o # RUN: ld.lld %t1.o -o %t1.so -shared # RUN: llvm-mc -filetype=obj -triple=i386-pc-linux %s -o %t2.o # RUN: ld.lld %t2.o %t1.so -o %t addl foobar@INDNTPOFF, %eax ENDREP DELTA 303239 268157 926 SVNKn!6 * r[Hf]H(#:x^Ak0ߥJYMZ]`!QeXg.|Ou.ba|&ݮ#1Rh4yEY3Q 5"^~\Su25Z/.c[@Xt| 3fyvfc/~jBrTCpK~]a7-hmy=Hg7긅ٍzBʑݔXp>vL~ M[>uό4ҽ=wi7f'xJvb7ݫYӽkb_6Տ@ߥ&M_hJENDREP DELTA SVN|j||x^Ak@P߼V >BB+ido35ڑbC~|F V̼(˰^|^_]&I~"jDŽ2xGK@R\1U`[l=Et(:AA(:`k{BKv38 *W*ʊE? S:\?7)ar"`u;~Wg^a=&&`"1yLvٵu3Wo>ERj0ԏs2[Omtm[*5Z07s릨B*Շ. @3)mezO>Ew'<HQO| ϒz6HԚb@'7o3ŪENDREP DELTA 303239 270416 347 SVNJK j`j2ENDREP DELTA 303239 270776 348 SVNKL jaj2ENDREP DELTA 303239 271546 316 SVN-- 3 bK2201000 .text 00000000 _start # ALIGN: 000000000020ENDREP DELTA 303239 271875 451 SVN7n 7 :585# RUN: ld.lld -image-base=0x1000 -z max-page-size=0x2000 %t -o %t1 2>&1 | FileCheck --check-prefix=WARN %s # WARN: warning: -image-base: address isn't multiple of page size: 0x1000 ENDREP DELTA 292934 429561 419 SVN ]2` .a({{.*}}a.o)ENDREP DELTA 303239 272339 26 SVN4>  HiK .a({{.*}}a.o)ENDREP DELTA SVN0^00x^wqcbddF; HP 2ţE="($9,@1 8 00aKzJ3@PZ *?0$ꕤV0$0$e2$&\M ̀.86va8`;@i-4qe"fbPs@PZ*ƌfHf2Pf` P:J32` #CENDREP DELTA SVNHJHHELF>@@ .textbarzed.strtab.symtabbar2$@@`ENDREP DELTA SVNHJHHELF>@@????? .textbarzed.strtab.symtabbar2$@@`ENDREP DELTA SVNbdbbELF/>!@@.textfoo.eh_frame.strtab+++++++++++++++++++++++++++++++dx  @@ ++p@H0ENDREP DELTA SVN///x^wqcbddF; l6V,*Il ``sRƂEg (-ǀi7|`DU$*.1p@ E:~N~54q\2L@(5'Q$A8$1 Ȃѕ R ENDREP DELTA SVN`b``ELF>@@.textfoo.eh_frame.strtab.symtabx%@ p@H0ENDREP DELTA SVN@+@@x^wqcdddFf``c`e (10bݘXFSɌB 1pPD-H? ڙPĈD#kr4P xPz%%*)>,⒢$ Dh  2d.ENDREP DELTA SVNZ\ZZELF>@@@0!&.text.shstrtab.strtab.symtabENDREP DELTA SVN`b``ELF>@@.textfoo.eh_frame.strtab.symtabx%@ p@ 0ENDREP DELTA SVN`b``ELF>@@.textfoo.eh_frame.strtab.symtabx%@ p@H0ENDREP DELTA SVN`b``ELF>@@.textfoo.eh_frame.strtab.symtabx%@ p@H0ENDREP DELTA SVNVXVVELF>@@@0!foo.text.shstrtab.strtab.symtabENDREP DELTA SVNVXVVELF>@@@0!foo.text.shstrtab.strtab.symtabENDREP DELTA SVNHJHHELF>@@ .textbarzed.strtab.symtabbar2$@@`ENDREP DELTA SVN,-,ELFajeh_frad ENDREP DELTA SVNqqqx^SQo0~WuOYUHDh#:M2`Ǯ?cBEi~ww>ܷ˱1B2dW838{(@RT[^pr+Aד?8K>#/&8+/ o=ǁ͖ 1l9N!`fwbQh>| !l I/B! j]33>Nw5.++*Ld9!A8+$`=('EʜT9[c;@p)\aD+XS a@D.1*:AR)aL:V $.k 0B7^mbF :Z=kR\ M2u $:CuY5t_+[= f's8#v%@*^҂]^WSat{Wyhm=7A_dYM~ IEXiZH -/ B͊zΫ z>ӈr9]rK8;iu4&L/8(#@c֎Hīvi;|k2]V{2~ENDREP DELTA SVN}}}# REQUIRES: x86 ## common-symbol-alignment.elf contains common symbol with zero alignment. # RUN: not ld.lld %S/Inputs/common-symbol-alignment.elf \ # RUN: -o %t 2>&1 | FileCheck %s # CHECK: common symbol 'bar' has invalid alignment: 0 ## common-symbol-alignment2.elf contains common symbol alignment greater ## than UINT32_MAX. # RUN: not ld.lld %S/Inputs/common-symbol-alignment2.elf \ # RUN: -o %t 2>&1 | FileCheck %s --check-prefix=BIG # BIG: common symbol 'bar' has invalid alignment: 271644049215 ENDREP DELTA SVN## dynamic-section-sh_size.elf has incorrect sh_size of dynamic section. # RUN: not ld.lld %p/Inputs/dynamic-section-sh_size.elf -o %t2 2>&1 | \ # RUN: FileCheck %s # CHECK: getSectionContentsAsArray failed: Invalid data was encountered while parsing the file ENDREP DELTA SVNkmkk// REQUIRES: x86 // RUN: not ld.lld --eh-frame-hdr %p/Inputs/cie-version2.elf -o %t >& %t.log // RUN: FileCheck %s < %t.log // cie-version2.elf contains unsupported version of CIE = 2. // CHECK: FDE version 1 or 3 expected, but got 2 ENDREP DELTA SVNRTRR## Spec says that "If a file has no section header table, e_shnum holds the value zero.", though ## in this test case it holds non-zero and lld used to crash. # RUN: ld.lld %p/Inputs/invalid-e_shnum.elf -o %t2 ENDREP DELTA SVN"7""x^_k0).:,2 <tP(,IXr>|eOl'{t~x*Z f4;WZ0h?ݟ}BMQpٴ7ɥ _N,fVKI .|;{/>o;- [Q׬y}dpbEЩNXf^@ w9a b(ea1_v[hlT\g~[_&r5dl`}38h{ye^$"ɾ1Zͨer%v$YGdco0M'QnsG=kރUĀPC俸vCz?~~] *ɌD/*NWɏv,pޏAS0`(ɎܦZS<_(R36ENDREP DELTA SVNYx^]o0+4)e-긘Bh)LI&M萜4bS`ڏE]+ya۶G,wj2CͤpxPp` 6LϢ#b]-v-ۆm5!'ؠ&dL3` ^]FSɜڔ%mʙuSӊcFr#+pI Ƭ-񑠻x(f_rwA8ƌӄ0z`a?c5Æy /Y:`LL[ѩEFAh=f%G0OS9ЁV6ݙ{RtzFZH~{q񗝕=6gNg} @H )\?+*ENDREP DELTA SVNQSQQ// REQUIRES: x86 // RUN: llvm-mc %s -o %t.o -filetype=obj -triple=x86_64-pc-linux // RUN: not ld.lld %t.o -o %t.so 2>&1 | FileCheck %s // CHECK: SHF_MERGE section size must be a multiple of sh_entsize // Test that we accept a zero sh_entsize. // RUN: ld.lld %p/Inputs/shentsize-zero.elf -o %t2 .section .foo,"aM",@progbits,4 .short 42 ENDREP DELTA SVNqsqq## mips-invalid-options-descriptor.elf has option descriptor in ## .MIPS.options with size of zero. # RUN: not ld.lld %p/Inputs/mips-invalid-options-descriptor.elf -o %t2 2>&1 | \ # RUN: FileCheck %s # CHECK: error: invalid section offset ENDREP DELTA SVNNx^eQk0)nݐчA,u1J-MLehY.; m_000T X1aЏG .WZeA!?6 Z%U}`7*GC'szP ˌECXFH pQ`gkw7Aw^#SmEIA`Ftzt $?j$BCna8=hY셚I^Vzl4ϴkBsӆ4o1Q'4{7/ M }:0Qz;Q*\=&*k& ٴ<,z@oïȮv~PENDREP DELTA SVNrtrr## section-alignment-notpow2.elf has section alignment ## 0xFFFFFFFF which is not a power of 2. # RUN: not ld.lld %p/Inputs/section-alignment-notpow2.elf -o %t2 2>&1 | \ # RUN: FileCheck %s # CHECK: section sh_addralign is not a power of 2 ENDREP DELTA SVN%'%%## sht-group.elf contains SHT_GROUP section with invalid sh_info. # RUN: not ld.lld %p/Inputs/sht-group.elf -o %t2 2>&1 | FileCheck %s # CHECK: invalid symbol index ENDREP DELTA SVNcDccx^Q]k@|W "V44g.΢?IBfg[˂ޮ"%mq8$LCd* 6'N3,.BeNò0K Lm).H#u=hRf2^*ZIXm:B lE8ìz < 'IESYS;%,'ppglWn8!#&7۫E&1 | FileCheck %s # CHECK: invalid symbol name offset ENDREP DELTA SVN/x^AK@B=)B- dڮF㝦Fiv{ߛ0[?+ȬR*-^(X΃/k( WoSe A7Y;o Mt)? B?nm+#%HM]{{GNR9Fq[b+yyStSTu9Cŷ_?">'=|2ᚲ ::}@ ™ ZQs8Y+b,#ͤn ~3SA!+<= ɕ?.|ƷGbݐM_(1V;yPJ* ENDREP DELTA SVN x^mQ_O0x[m TJSB(r[͵$@鶓Cqa'jf_pb3pW϶dž 6O2i-n+=sGi#̂7lPc/o@X;S\+ J(.DuvC;jHܹ(JXd)K;W( Vþg!g ]H'?E8xD/+"Ihk<eddvʻ4& C cab}-a7KeE"l Uѣ0x 4y{3̟Z31[cZ}ONVENDREP DELTA SVNY[YY# REQUIRES: x86 ## The test file contains a STT_TLS symbol but has no TLS section. # RUN: not ld.lld %S/Inputs/tls-symbol.elf -o %t 2>&1 | FileCheck %s # CHECK: has a STT_TLS symbol but doesn't have a PT_TLS section ENDREP DELTA SVN# REQUIRES: x86 ## too-short.elf file is a truncated ELF. # RUN: not ld.lld %S/Inputs/too-short.elf -o %t 2>&1 | FileCheck %s # CHECK: file is too short ENDREP DELTA SVNZTZZx^N@# (bV&D1Ͷ5n[ 4h9~3]H^-VĨA!yk$ W}qtrLt!9E!GM07%HLE&Ab]*HU[rDpP4/4=R#pek %oBUtdG5vQ{{.*}}:{{.*}}:{{.*}}:{{.*}}:{{.*}}:{{.*}}:1: Unknown language ENDREP DELTA 303239 273806 720 SVNUJ ; expected EOFENDREP DELTA 303239 274660 183 SVN)v=$I:Y6:T Xx^Qk0U0aʄсoi4ߗY7!\rw4ѾQhJD^9E"^RP.WJ[,KJ0Rpc_ ؞:dVVG͹dfJTW)ΐQOqK@H*Yk`8h CS}v;zھ6Nps<+'R YTd2 Ǔvӳf)^Luq!,iD_NeTv!-~_9[F BFFuENDREP DELTA SVN.file 1 "test/ELF/linkerscript/Inputs/comdat_gc.s" .section .text._Z3fooIiEvv,"axG",@progbits,_Z3fooIiEvv,comdat .loc 1 5 ret ENDREP DELTA SVNYZYY.section .foo.1,"a" .quad 4 .section .foo.2,"a" .quad 5 .section .foo.3,"a" .quad 6 ENDREP DELTA SVNYZYY.section .foo.1,"a" .quad 7 .section .foo.2,"a" .quad 8 .section .foo.3,"a" .quad 9 ENDREP DELTA SVN .section .foo,"a" .quad 0x11 ENDREP DELTA SVN&(&&PHDRS { ph_write PT_LOAD FLAGS(2); ph_exec PT_LOAD FLAGS(1); } SECTIONS { .bar : { *(.bar) } : ph_exec .foo : { *(.foo) } .text : { *(.text) } : ph_write } ENDREP DELTA SVN343.section .text .globl _potato _potato: nop nop ENDREP DELTA SVN&'&.section .keep, "a" .long 0x41414141 ENDREP DELTA SVN()(.globl _start _start: .quad 0x11223344 ENDREP DELTA SVN565.section .text .globl tomato tomato: movl $1, %eax ENDREP DELTA SVN   SECTIONS { PROVIDE (foobar1 = SEGMENT_START("text-segment", 0x8001)); PROVIDE (foobar2 = SEGMENT_START("data-segment", 0x8002)); PROVIDE (foobar3 = SEGMENT_START("bss-segment", 0x8000 + (4 - 1))); PROVIDE (foobar4 = SEGMENT_START("abc-segment", 0x8004)); } ENDREP DELTA SVNTUTT.section .aaa.1, "a" .align 16 .quad 0x11 .section .aaa.2, "a" .align 4 .quad 0x22 ENDREP DELTA SVNSUSS.section .aaa.5, "a" .align 2 .quad 0x55 .section .aaa.1, "a" .align 32 .quad 0x11 .section .aaa.3, "a" .align 8 .quad 0x33 .section .aaa.2, "a" .align 16 .quad 0x22 .section .aaa.4, "a" .align 4 .quad 0x44 ENDREP DELTA SVN/]//x^T]o0}W\5nrD(6TԤ6:USaspDNhTZ9r`?] ط|Z0,Mc@7)%nF, 錒 ^L4My  $0 G GIjDaޅ>oW]CH@`{?ؗ_n顐Jȅ~Hϱ}Nɑi$1x fr+<ރ9"4$Jjs5|@$IGr&TL9Ѵ-eQH;M:?kjswU4bc/k@ŸC:к\SO,I[ <eDF|Bj$),9'Ku5^76-/v G:xnnܾ4jP=nTkzSٜ[]%< \&ENDREP DELTA SVNMOMM# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o # RUN: echo "SECTIONS { foo = ABSOLUTE(.) + 1; };" > %t.script # RUN: ld.lld -o %t --script %t.script %t.o # RUN: llvm-readobj --symbols %t | FileCheck %s # CHECK: Name: foo # CHECK-NEXT: Value: # CHECK-NEXT: Size: # CHECK-NEXT: Binding: # CHECK-NEXT: Type: # CHECK-NEXT: Other: # CHECK-NEXT: Section: Absolute # CHECK-NEXT: } .text .globl _start _start: ENDREP DELTA SVNx^[O@+N $n !5iI|0!]m ePyig99U ̇a`VSb0 0sڎ/ "3捣f,YG2C-QKMcTl-_x2P2UQb5Y ~IXI˪d͏4tz_UZy^_Upͷ[2c>{3$^Rקd݈o+wԛ+J\ؽ5w$sEb:G@`!.su|AdnPp6v?"JJUuJWq:0pF)W7[\+,3]R18ܺV$ȯKׇzL"Վ^ENDREP DELTA SVNBABBx^e[k@+AK7$PXt%DJRdc߻^⥞= 3]6ێր?lgFd\-xWL?@"Y'I M ",zb=z~^;0Ea2w'n8`?>z-Ll3!UKUSn^dHm^cFݺٹ>U8,8; DeBy<*r;}hP3Γn`H'}pY/8 XG&eu(j]6 :#7jZbOݐCLW%DENDREP DELTA SVN} }}x^Ք_@).NYmK }(,dIf&߽5UvK}1sLwV1u۪bt3]Bds.XGAT/8o-T,S4_&AjʲUf,CͨBHFXlNΐ8XZSŲp&Pw|*сj:)J e./zty͋]? lK0<[mPQ;hyd(4AQϭjQ,@$ ȌшercWXPՌA-h6*iߚ|$VY{jl!ן_]${].8]'DZA& o]72&^rSb[M s=xw]y~exvZ YDD$փPgz4.?ywm>ES.q+͔e~< XhHtZ/95;'5O~ ENDREP DELTA SVNPZPPx^ao0W:hD%@@KJP8YT-}gRhUb_{wf{ ~:f7dC$\0~O }!Aesm`txd> ~"vpX.jTEM IUZ oU `ѩFZp9E".q2êqI}3\akF`$߽[ͧۈu4=Nfm;tgWס,T#+ VLC(JnԠ3ejXRi`[k=D7HнTĪ %l$X·nv/︎ ,>ki+P2ars-^jY ?–'ccT)ldrzobذvD&ENDREP DELTA SVNax^T]o0}ﯸP-P%b ؇1K`;k;iW68lpDs&k$e9lZ~kۚ"uʬ֦[ O!z%&QHei1pqП!^CxdV=6eYOK)p0w,T" bedJq#4-* >@U=|eW!x* [v.hYId&P̓-vܳbaiQ>'1[r|ŢRleW K %B@"[Һo@%EJ$dì(,INOD{@0*x'Je ,Tgw`QlQs3"ٶ_;^! 6@Ê9Qs/Ugn#^kh-i%$cQkMRKcӗv. Lێ1ks]9~iԢy8gя궭oYRD[Z9-}A Vkq|M%'[=2&5 %t.script // RUN: ld.lld -T %t.script %t.o -shared -o %t.so // RUN: llvm-readobj --program-headers %t.so | FileCheck %s // CHECK: Type: PT_ARM_EXIDX .fnstart bx lr .cantunwind .fnend ENDREP DELTA SVN===x^Qo0'Nm@TEDC[[-/SiXa0U)$4J5'w>P\[J6^e(NVء_xvƟ%$ 8c(q]J] gýptvw!r[Fe Ei;>Eᨪ j$T53DVf*4'L4j6ǁOj5FP$S)(WU}cI MD  eV™zs$_gP^qS-.lJm.lwZL)"<kpZaRDcNӠIvZsBE6O<)3 V2;Y?:003i9K" 4!޵[r־><*G ՔH['=1-asaE{52 Wrun sgAUnt h EWENDREP DELTA SVN*x^ݖooP)Nlt hiY\B(Φ:֐ \p;hͲoL=nn(:{0 `/SfA $vhu2 @d^\~ bIւ:gÁ1S@.ȫ,/P@5U g9-_ 5/ml6嵨:mb h-mn֦]%m x pゼNDgnG#bVywޑfg|o5rU/~9)# ͍g슀'L,TjP ^C旂 XhV(?A@1N!H9 o^K5׾WENDREP DELTA SVN B x^Pj0}W\*&&(8R0ҦWLҤcߗXCr9,uV!wcBz\/BPЂ‰ހZT'G)z/eB_U7}<5tY5ESୢKX'0Т G]vʙ9P+L5r#TiiG-r͟@5)e\Q f6t|V5nD;O[+آYr̚mb@B+  jG3߾:גZ<+@WK^o7J":^νCUm&D[`Dj4Sd=ENDREP DELTA SVNB BBx^Ta@ί咶9x+9RڦMcVYoUvj ~._f73&{o6l{]& =f9݊l *芑>&N 7-\I0\I2D^-C}ut޻-炃Npw/a xZ2A?-Yb,h:`{i qZFiC4d$y@f-]pT)@e1u@fbYH@1c"sI3I0م|Ag:6TOHE)lm=9հ_2'¥xQg YMPh8ǁs<"WADJ[ֱD֛)"\4G!zg\Xkֶg5mκ|ن5;VOn(Otl,fV̖xL V)'s<Ǵ? ~numv9L eT/X:hՇ?՟Vy*j@ENDREP DELTA SVN % x^n@yHIEeYr&Jd+>H44EҼ{w!܀fg_3'0Vsk1_8N`! !Ic2o@&C2bO]C)#v L"}[Xz6]@y8`R?cO) |8㨬KNipB5ܢ͗B5Ev6SUM+h֢v``쵮!V{vsOPj\pX .VY]x>k&2}ZOC/l|P{u (7MH'6#+˼o(%Q!!n(CSǒþ(1𗦩*`? ]5qGU9)'0'.raR7k09xC`7[`تy(=>|QcLfLz{&IRl_ZȆ} "J[+'UN&%9%Ln%VB;Jd8^GZ Aj>ENDREP DELTA SVN]/]]x^To0_qI))SfhtIV!dfY] $jڗ-_|xӵ߀雳x׎qcz٘h*1;GaT{.G|2C Cu2>x҄z58m)Xr+>u|x+t8LzIKo7q qT*6U+v ̎Ome7(Y!0JmlyrָۮB,3NGQ'M`I#-J'jZ} Y:3 /&qRf!򊻅m/ExUeJa&RCHX <}y7 h %t+&")K؁c:%OfZH0Lؿӓjdj?Gím;ԅ9jpv&{bm,_k>Ijo  V:RD/Y,4h G]4t\2-άCH>2N7D}!R hX\pэ,_ ENDREP DELTA SVNYx^Qmk0_qT:D*nHLi}gͱߗ&=_r咻7p6VV`ԷۜIĨXe`%OKƳDŽEqB1( -S}:^?ęyeG@ 뻝RH'QL2a,4M0'eΑVJ[űaUJTy(M?u\d$]GXB@yYutIh ")CL6/teΔ3d֡s:6,L5d_U<ͯ`;O~)f<3>qkSva__辮:\ɷ)ENDREP DELTA SVNwOwwx^oO@)&O&^]J!w/hV<.- Ȃ?yov: [a08 hYMh'6"Ǵ4μ'xUӒ~^ `- h=1 ؾB젒C]{! !]pvxb-)FqfyV.'xhɠ2'AqC^oxq]TIAnE_:me&}dN[}k3#:hZD\5*βJ]a2!Hۨx FqR]mžO ) %|ⱫIĢEthxpuq)ܕa*6*ʻO?#q_S[鿧YӬL]Dv6Qpe(Ι-1iՌJiG+ňz۶=f&^x Wpbտ[W͏_b_x]dzP188\w=NvKU#O4"H44I.%:p@UfZߦ85L@U{ߡ,&:W*VF‡ˇBTllf# wpp8;@:>1_ Dax!~?qC,gMj{f#ά'.ARƶl=U$v'#e\tt~ofo\癵oqyDjB+MXQ!wK^EVXȖZeM"*nȪWm(9նIG;tl1\Ljᱡ?: ",LǬENDREP DELTA SVN>P>>x^QJ0}W\E*FױhV_Diٺ)i7mVf^9sco*@3uDį+&}kC/{x^ր FE0&~YTMJn9O{V}$0X-f |bU]Ёwp.s6a6bvMg^ۀ;5G7WZk8fiuT>KZII <1ᩱ5{#@*32ʗĚJHՋw10D2vQO|܌%{R݅> z? sb,EL9lkEX_=ENDREP DELTA SVNJLJJ# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: echo "SECTIONS { /DISCARD/ : { *(.aaa*) } }" > %t.script # RUN: ld.lld -o %t1 --script %t.script %t # RUN: llvm-objdump -section-headers %t1 | FileCheck %s # CHECK-NOT: .aaa .section .aaa,"a" aab: .quad 0 .section .zzz,"a" .quad aab ENDREP DELTA SVN1/11x^Sak0_qQJ)gRF-9*KRJ6}')k 0w޽{',v$efqB<^Wpv*J>* k_u,_*&0qO1߇vcwNjOoׅO9*5/P_h<kk%}AmF4~,7\ICjgC%ІN_rJ;PrQO⁏~]m=ZdeD]5PVp( VJK0{q%#Rci$ɴkÀH$,``\٬%\"sdTYGV% kmSKE6ڹ [ە,CILwr}8$9Nd@osӢN %t.script # RUN: ld.lld -T %t.script %t.o -shared -o %t.so # RUN: llvm-readobj -t %t.so | FileCheck %s # CHECK: Symbol { # CHECK: Name: _DYNAMIC # CHECK-NEXT: Value: 0x123 # CHECK-NEXT: Size: 0 # CHECK-NEXT: Binding: Local # CHECK-NEXT: Type: None # CHECK-NEXT: Other [ # CHECK-NEXT: STV_HIDDEN # CHECK-NEXT: ] # CHECK-NEXT: Section: Absolute # CHECK-NEXT: } ENDREP DELTA SVN/v//x^_K0)m"2V,Bն<5IuCus|P$߹7w{7bٵ6.8q rr9#*Ҝ6vwH=e5#< DڶOJT)G`=O^IMlP-LRX Gu"ɖfs#0ldqEiq?XW9u.fu\CTd[<߽'XH/|:f+K֤ev\aބ6Sot0Q]?pqnq~b1ʪ|9vj@N5Zk, K  o_jKDHJ_?ENDREP DELTA SVN $ x^]k0+s&ޔ1ג6QŤkVqv" Ļ| %t.script # RUN: ld.lld -o %t1 --eh-frame-hdr --script %t.script %t # RUN: llvm-objdump -s -section=".eh_frame_hdr" %t1 | FileCheck %s # CHECK: 011b033b 14000000 01000000 49000000 # CHECK-NEXT: 30000000 .global _start _start: nop .section .dah,"ax",@progbits .cfi_startproc nop .cfi_endproc ENDREP DELTA SVNDFDD# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o # RUN: echo "SECTIONS { }" > %t.script # RUN: not ld.lld %t.o -script %t.script -o %t 2>&1 | FileCheck %s # CHECK: error: {{.*}}:(.text+0x0): undefined symbol '__ehdr_start' .text .global _start, __ehdr_start _start: .quad __ehdr_start ENDREP DELTA SVN+V++x^]O0+ތ!D2f 2õcS1QCN{sN>iO+Q۶:u p hN}K̮T&~ٕ84\QRiP;se۽kICţb]\"/Dl4\+.\eIιW:Ҳwծ1h+G2:g=u-sܥjJ ,+qp|k4!,` l,c\Vik= BTu-KN7,Arg&P*'av~x4 $ BC$P#,'МL#ПSC!YENDREP DELTA SVNLNLL// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o // RUN: echo "PHDRS { ph_tls PT_TLS; }" > %t.script // RUN: ld.lld -o %t.so -T %t.script %t.o -shared // RUN: llvm-readobj -l %t.so | FileCheck %s // test that we don't crash with an empty PT_TLS // CHECK: Type: PT_TLS // CHECK-NEXT: Offset: 0x0 // CHECK-NEXT: VirtualAddress: 0x0 // CHECK-NEXT: PhysicalAddress: 0x0 // CHECK-NEXT: FileSize: 0 // CHECK-NEXT: MemSize: 0 ENDREP DELTA SVN3c33x^S]k0}t[ؔ&eMŁҹ#,Y(Rāʖ6Z{t ax# K9 zI,oW\+AI!Rm$,J8ˀ(8'?~ PtN``݌|V"K5Y\@8q}. ! \o!.#% KTa(ʁ"C` ,jtUF+9G Ԋ\gt% $,F1J֨0{A-],g:?:h սn Zcݣ|dA5䮤U.PLjWNz5N>["md }Lᑉ4-vnbL؍ĎLv[T3:W`Bon{3{eIfOB{XO瀋qGT6LTiDaD;*MmǖИ;zؿqENDREP DELTA SVNW:WWx^SQO0~߯`4hle.Y"``bp+qR:QMD%aiݷ5Eӎ AZv!g9f y{H&wQ*B> #f U*;-*aYӐaUηфSb6qMXp'ҡe݁"/%:UͯzuMuF11`2Mx3UH?G 5bC@A/a>tj^ z&{';IP >$,P㧻SjӫKMٵZmz-DJ)e)gYE 1)k$,KՋϰ"-7هHZB/앇цmd% xQ֠fb#Q,uDz-vW?"JLQD~ҨENDREP DELTA SVNttttx^T]O0}ﯸ*DjiJ{ FTTaR8p8|Q Hqn9(0?18{OG0ʗ\18(\txaBʻ98hbKm)-2|6PM ڜE`YEt,IínyX,I-8A`E8mE4xD5Zn[[XWQb\_AQXOhͻq7z<+%msRWfYke?]U?\=pq\Eyuz6z(6>ʰhiCGh$ c68 dC~$ULz0o'C@LC<%cV`/h?/Z]pr8{(#r8LGY#<6-QahEQ wg(M>$L1 Wv= L ]j6B3Q?ѱ3Xt{R%f(7ثa/x \7ָZ/l*7Ï7rvd1%RN)yiր:6@o! Yw{4}e"3D`BУ߂r]"DH "sIdƠ[na"LsUD$wM炮F_sYENDREP DELTA SVNlx^Qk0)Ja{He* ,CMf3MJ:ݧ_Ziէw9ܡ.(4[!<)&e,ZfR(4ΑfalG&CQ-p,=q8g?zfrSA"̡IHTyV*GyҢ!p^Iw]~U_` !=NԩEb-8ci Z-n:[+De_JW^v"]7K>ӡ~{h6#02R9RCEENDREP DELTA SVN]j]]x^oo@)&mAbp XJ^M`EK/TwղK#o=Ύ)ӭOH)O##C_ő2piF[%pFp7]?N9EXtŸY<?\MȒ$]qQ8_/RP` F6=$) T{2 Zv%–o#Ude>`vw`޿+6a{>*U\0e[ / Z[Ŀ(~84Z4wǐم'ކMn]vZ1Xp.sQ?g\ϲ%炚FkM+yC|T6[ FG-Y^z F/},Y8Y%x+y%fր3kȽ]R"n{;>zfh.XmDc\m8ENDREP DELTA SVN# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o # RUN: ld.lld -o %t1 --script %S/Inputs/implicit-program-header.script \ # RUN: %t.o -shared # RUN: llvm-readobj -elf-output-style=GNU -l %t1 | FileCheck %s # CHECK: Segment Sections... # CHECK-NEXT: 00 .text .dynsym .hash .dynstr .dynamic # CHECK-NEXT: 01 .foo .quad 0 .section .foo,"ax" .quad 0 ENDREP DELTA SVN3233x^Q0+Yڥ2)Kqq/m,G޸Hƒ)+#r(eFқgyJpp\!_&%XU n~5JS2Qk pmXk õAYhWءEQ˦3м4%vۄJpzJ1m>|+LVl[)4 oXo /x7ޅf+LjЀMR+Ӷ7lG*̚W1].q7 fJ.B-ƈ\wE~+gyOY /d8|+FG+ƛ m#+I1 {(| A.|ł@{Kx +7@lENDREP DELTA SVNikii# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: echo "SECTIONS {.foo : { *(.foo) *(.foo) } }" > %t.script # RUN: ld.lld -o %t1 --script %t.script %t # RUN: llvm-objdump -section-headers %t1 | FileCheck %s # CHECK: Sections: # CHECK-NEXT: Idx Name Size # CHECK-NEXT: 0 00000000 # CHECK-NEXT: 1 .foo 00000004 # CHECK-NEXT: 2 .text 00000001 .global _start _start: nop .section .foo,"a" .long 0 ENDREP DELTA SVN~~~x^Tao0_qJۜT*H #H)YM9gC *Brݻ]1,X]u J  %9#=6H$'%*ҧNMbxt q"7i2I9ʅQLp@64H#ohЗFʤ;bAi$%E RG̈,ʹt/wc6 eQ6ԽlQ> ;]s7T?]tB*bY!Q\3P?V(<<ߌqS5ό3g49u%U==Ϝֻa VG}mAcXw#>B}qm/qA}NNk): I(Tq'^η1VK+*$3Z&A8PWFClȣ﯁[Y~}l꒍uߧHr,]I(҆($ɒH4㑲?Pms4N1nO!.ENDREP DELTA SVNw\wwx^SN0}W`4J23 ŒFq` ڪӲMp 2K{NO=׹r ɱ]!#2@G̛DX& aI  \*}=u 9&4Jke ;oz"}-@<\h%5c,5V<$Oe~:0:N]> Mnq7HʵFB{$eY#Tn ͞W geN(NgdB0!KdY3QP|+akl~F?~Wn'cMu{K}]R*,8Wuޯj|ҹ:{]L!A lB YJ_ ]?ӬD IȰ!g0TQjȆa> 'KcN9F>W1̷c`1lV g7k(KENDREP DELTA SVN666x^WmS8ί؃PM`7i0\Mhp $JaF{']lw3%ɫѮzvpO5mfe}%{ʴ袞3 $ztQW =vƒe`H Z9=x Ogb@\^^ʧxM- ܵ4ʰ mx.) 6u.E\ʲ ^_,VlLtW+>rDъ9mN=x*d}ø^!q,^& t(Doqhtt~8lG%aJ":9HB;ZStg5>ZKPr4<z31r #e8T&x*8ΌN̤/9&Qa׀Ĭ?AkOt;el\c<+JVyp=] ±m-.Tmj6_N7< \T QJw^'zT`r.dOʛZV6oIJ!Ā]4^D E4ޝSfDz E"d6߻~[r;kٱ%}Y5QeTӥ҂ l$-|2xl!Vw}Na{~9$J`=D!5vu rCbVVv9!i !j  +MceZ  F-$,8EH~}Ω H!@ ϋx4 !DT)d?'wRX}5B[%Ջr{ BID?Wԏ]%'bÎ=+ZI&p`K7#}2aXcPM-儿@xYgvg9ds ڀ6.h5;ECj T N'OB]Y XZ\^ DCx"z_<8?| y1>Œ'>dIb c|K{!.m&o LqzFJ-gnߊ~-Q]ڇmc{KưɫsFV-VJ;m*mIմ@\Z#z4mO]c5\KSa3V[*fJ咰;FHVPAENDREP DELTA SVN;=;;# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: echo "SECTIONS { .text 0x2000 : {. = 0x10 ; *(.text) } }" > %t.script # RUN: not ld.lld %t --script %t.script -o %t1 2>&1 | FileCheck %s # CHECK: unable to move location counter backward for: .text .globl _start _start: nop ENDREP DELTA SVN$6$$x^OO@?! ^ Fv nj])GfެErw?[$qGde Rk%zFuQI1zF~QLi1F3U5dFwRa:LcHqJ)"k IΗxܤ6oe\ʬ3u~FYSV`+[5ދ`8h!F E( &;uSȸ&Qq7h)A6OV }ߖ|$;kCuu?5 |?°t Q?ENDREP DELTA SVNl'llx^U]o0}W\! US*`  ]NXa #8(6XK:uRs|OA,aJ'\: @F1'wPybRYM M~R5| Nyi (ճ1AZj4a!$>ETps(ZGk 4BJ"Q!Eq) Ax T6R5/-L{-qEOZe{Sbde Fw;?Z.(1Kq֠r]Dzr)Ô0fEh6od^o8d?ppt+ڭInD'B)-:Lۚq4SBE֪AMz<^Ujsog2 1hAGe.²QkuY#>2{[+mYoy IFfnDasj\!/vají1I?pv9I%@qB1i6Cuy6?h)8i>2a3q^9Oͱb[Z7q ENDREP DELTA SVNooox^N0'肉!#.#,PV2*݊kQyw Wx{=r* ;t| VQȳ%!2" W@2 FJ8nEM+ @j$q݁)DZd,ѾMO>$/lsPb7 b)'B'`5~}MeTVu;}[N.v4U:Q!, X}ii>MMcW 4!'zoUBҷOBIy #YMŜ=|;|$N4ˀ𿛭 OݣɃ4J$90 SK,+ԯR>R2khjʲvD)60MENDREP DELTA SVNikii# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o # RUN: echo "PHDRS {foo PT_DYNAMIC ;} " \ # RUN: "SECTIONS { .text : { *(.text) } : foo }" > %t.script # RUN: ld.lld -o %t1 --script %t.script %t.o ENDREP DELTA SVNh!hhx^͒[k@+6dJ(֡vm-lWJEޕK>wfrη0XN/U,124]Cg]: WD S␥(d^g+"F7!=z>;> lKc5_#d a[nZ@i0=>5e??Y;T#ePmۍsG7*#[Uumu`M1M㡳H/*Jx:NpvTM p(<1o@XbW)x'qK7!Vqik 馢Q)>sqK)G ( FaH-C] R+w/vQ$#J 4-I>}ޜ/O > &I a?|{wqOh8o^GXU,|)ZWu`dmhd{$5i+HhXY2caڊ0Y'_6tnn'gh]Eӄ x6!qbh=m CMV a4ړ;k[\Rܻ[$>ěhAI“T?Q9ƢQ]Jj6ynUxr _w$B^1uBA>.C rU!M@Hb+T .B*!KHx)dp"2!f%iSIb]__=?7aT6ΰ8wwXf5dENDREP DELTA SVN>@>># RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %s -o %t.o # RUN: echo "PHDRS { boot PT_OPENBSD_BOOTDATA; }" > %t.script # RUN: ld.lld --script %t.script %t.o -o %t # RUN: llvm-readobj --program-headers -s %t | FileCheck %s # CHECK: ProgramHeader { # CHECK: Type: PT_OPENBSD_BOOTDATA (0x65A41BE6) ENDREP DELTA SVN?%??x^RkO0_qUh *Rh$QӡiU&v[bwXdRC|ySJTf\0d}uR>]J>H(rC HwXb q/`@6ޤa9%TDRNh:(}o[`2JgCrJvV;l8|,d^SEQ%%l5m9MMҺŘjƯ\WtEJ+Rv-~Cla`Ń-ڳ>͟5a-`b/x_8{5ou('Nfx+""bZ!e'͋n9/Z-+A s _gx:~oMBdҮ{n<׬0\ɷw!"DjENDREP DELTA SVNqEqqx^PK@_D,&09J&wgNۆ >>8H3jND aY8ĄxB]IIVD&Puh {P*p'дPCNaƈ?t[CE6pK_Wt48NnB I)za CV"Y/"FPH-/^RhcO{- \_,Dqn\4ֵyeuF:d|.QL% #g )Wl$ZPO/LzV8:dOQdjlW`ۆ.L A4MCᮛtprFqdPm[N{lnJJ$K]mpq0U%7?$\ ,`U&JJtYH ey:(~9FTL4AE&*MRW()R]Rk!TJ֡UeM^Qw`pُ;e7c&1Kӊgk>q.aW_5fVջ\ENDREP DELTA SVN#x^uQK0+{nʐ d8Zm34ҡfsU.o]ni#`S7`!Eu7o)IcZr ;[<:Fk)ͬ*C+dw}/;kReFw:LMkYQ;Q,'mj.vUS~GNL) GQɯ %^n#]nЦ3fa,EUքxl)"M_]ۇENDREP DELTA SVNp;ppx^aO@W1.lE !(X# hS%.^w+߶KEG$ϼ̬n2s!փabv7%Y Q3>Y2z '$OJ|#q$+ D-{۩WSqX%|?.ox٪[at[nޖ{ 깖PfX'Mu,wD@mPx F|v*drscAX!#RK "1YQ/iVwsndɊk\HeX\ɝcK#Ӕ6J+KT2%KnuAˋhu_W/[h؁6+RwB^_x LxPEWDߟ)8U@{)@*ENDREP DELTA SVNz|zz# REQUIRES: x86 # RUN: echo "OUTPUT_FORMAT(x, y, z)" > %t.script # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-freebsd %s -o %t1 # RUN: ld.lld -shared -o %t2 %t1 %t.script # RUN: llvm-readobj %t2 > /dev/null # RUN: echo "OUTPUT_FORMAT(x, y)" > %t.script # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-freebsd %s -o %t1 # RUN: not ld.lld -shared -o %t2 %t1 %t.script ENDREP DELTA SVNOx^Vo0T& VUnbh :Bi?LbYlVX}gB PU=>yh>5߃٩Mqvqg=`E#{Z'b$䭰9)(%4 r~ک>A2Bcu 27bC8~ez=YwYJԺr*:1~uAFyXE;f?V>_W.k~KP7p+؁ E$y*0DO\#i>o`<Cm'Ȓ,ɦbJyũ?pX`fY<y+gcLP D Ø*q:CA1C&0 Gو t|dDce 2)N#I1_X"FtV9sR9AbLQҌs Q AK3i>рMaOVzU~$i`e.B:j]5ɘztWnXE.8-}uPI`mV7͈i01ʄ/3:Է \:m$7 ovۭIEhOt3Hɳ}8rxxf/,mq[K:|͔ _:X 6t-8 OOb qb|yBiW2Hr~NXŰwbxRwb,y3zS_gGENDREP DELTA SVNgx^mQ]o0}WhLtK Ɍ[XX`Q2 0s_! A([e>{O9ܰ@q1lu 087)UW@y ( ? r@ ts)iUhN5,Ӂ/xHc<K&\6rZ䠈ޡîyc 1no7xL~`")ř,MpQP]@`Xm! +x\ B. 3"~xoE4ښo6!u)ӏrܡISgz{ _qx=leA vA0%o`r1oXr*%h]q|߃plR FP~@kp6 I$%;bLe H,OO uXy7YgIpnWĩ/(( LD+~ԞqB{G]MR+;˅:g؝cPA-Cwn14tU1ÁclNr(`Օ<TM}v,[8,l@h]O3,~YgEf`Lfvϫ+Zd8b-LéN?^co}rf!@<!S5MH7!}Ә/#{Kx32vRqTv8W7֜zSLaF8CI3=Z 4ncl*[ENDREP DELTA SVNOOOx^͔n0F*%QTLB 4ЭV4qBVĬi)^': v17[G0^'cBrh!h "/@,88kU|ӻ(^eppvG`oN1u']B`< F.WADɁA7e~Nñ:h|i|vQ010a}vRLN7`旪bJ(Qeͧ{xӀ܅z^ UB|ID{f( _x_&4LGy79n{_kF˿A ;=Y\x,mOKкRk9/( Uh[Kھ45w}Qf4^ 2_/xq V(.aϾ/5*^ZWusZ"2+@^6 +ȴ\K-j%늵6xcn\,EQCBo\ ST KcUp r뗺?B5߫=H&{^jn:-I>ʅ(EQjS^1̏8f 1pcemw0&Aٵ=(~Ł`3M%l-M㱳5?%߹pq儲ObNH\ʼ{eq4~Iv |gjg8" 0`kG~";ĈZ,I";%GyYy&Ƚmb}%;?4"+-N?~m5qBsTCBicQJjNqH"렒SB*T$^)x$ԕTRR KlUuc'$z2A r*1O9 w)U"-v y& iv Irpνp] sD]D1LXOʺ'\zq޹ْixQ?حFt}u*3 80 FIs7ۃ,!@K}\)<E_4{d%ENDREP DELTA SVN # REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-freebsd %s -o %t # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-freebsd \ # RUN: %p/Inputs/libsearch-dyn.s -o %tdyn.o # RUN: mkdir -p %t.dir # RUN: ld.lld -shared %tdyn.o -o %t.dir/libls.so # RUN: echo "SEARCH_DIR(\"%t.dir\")" > %t.script # RUN: ld.lld -o %t2 --script %t.script -lls %t .globl _start,_bar _start: ENDREP DELTA SVNB&BBx^kK0W*S"C tt0W l˚vYoKm~0_}ۓ`h^C6 GƞdL}Fv$юS _*E#h$e 9TW<hO 00xx+êtwYQU rEYw‚hyc^BꖓLgOV$nhg7zb:9u CˆNsyab  y(ne{),gIQ-uhŪSWjCNFC\r %t.script # RUN: ld.lld -T %t.script %t.o -o %t.so -shared # RUN: llvm-readobj -s %t.so | FileCheck %s # CHECK: Sections [ # CHECK-NOT: zed .section foo,"aw" .quad 1 .section bar, "a" .quad 2 ENDREP DELTA SVN9;99# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o # RUN: echo "SECTIONS { zed : ONLY_IF_RO { abc = 1; *(foo) } }" > %t.script # RUN: ld.lld -T %t.script %t.o -o %t.so -shared # RUN: llvm-readobj -t %t.so | FileCheck %s # CHECK: Symbols [ # CHECK-NOT: abc .section foo,"aw" .quad 1 ENDREP DELTA SVN# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: echo "SECTIONS { \ # RUN: .foo : ONLY_IF_RO { *(.foo) } \ # RUN: .bar : {bar1 = .; *(.bar) } }" > %t1.script # RUN: ld.lld -o %t1 --script %t1.script %t # RUN: llvm-readobj -t %t1 | FileCheck %s # CHECK: Name: bar1 .global _start _start: nop .section .bar, "aw" bar: .long 1 .section .foo, "aw" .long 0 ENDREP DELTA SVN;^;;x^QmKP885F0,& -u_v׵YwݲM~LtKeX]XCB>ʳ H)]bmB;h53 *n6|KT24O5H0 :'SXMZrA5 rvZM#M:28dn9eh{hp<6600cr6Ἁ߳H|Jj\X< mY==Q"p^zZqENDREP DELTA SVNOgOOx^Wo6 X7Djxn" GY@QhliHAcgkRil?;88lλܼ "3r!//0U!^1W|ŚaW8` 8V"~=JKږ0# ] F `Ɍ-\4動 ~s? hMt8MTpG~z/zbX bGzK ~XҥW)04o&sf؊-[LyȔykAi4}f<\2j,I^9=zlolNNy6T#}ztQĸJRbr,b _`4ޒ[z)lC jP;?zve z3S j-9U*RlV{zKT_ g7Dm?jGM|O`Fj*.Ȇ␹hiBlPZ^ "A)&7̏~>uO( ƫU\ϐ<DL f!JY,ԫ[:ʚ3Gzf/>,\ooz ۥ֞r}l!6 +wԂ*ȷՂZPQ] *ZpȬϩIGMaaN\b\IT1C \ w:^ ATt/mx-N;Ōp+K} h1 j@l*BAnmL+1PCENDREP DELTA SVN+++x^͔n0G[5G&DJoh&qR+Mcñ)A[}nCa#ӆI~8ITk~(9lr@`=^RZK$,+Ѐ\kadtfI $M\3%*V:]RAk m4[\qkj"u4;h-eһoѲ: 6UL-M] CZ0>8 "ѷ>X 5QO>^g"؛n4j~ nܲ9)5 }8 hGcW 7?3v災M wp CiAy KV9ӟv[G2I͛|%kװdTuE +Uyu8uMm7K9 f̬p_a^<1V?4 ;[֨ꄞ?fqU#YB C,%怸Ap' 2gBuk+ENDREP DELTA SVNx^}oFSFjOGK8TR[{ ^׻$\{w1m/̾ffb|1ǰ [`q7{ cMu.)yZ?i2pJyP+ATgCqmKŎ[ (q se|>Ld1PO kpͅ]&۫ؔCJPme@G 5AF] Fp+Nn\ vԣ{Y\"%r{!OCm7qK,D5r-0MR 8z_N+=HeѰqr*'asqߊ\7ZQ{T\yaYdhX1*1M5l>xtWQ[߸% >wn.";[K3^N=[?[¥ϊx+CV-s,m}+,>u~ pt[KENDREP DELTA SVNZjZZx^}N0y5#˂a!#bAqhHa{w-8CoӞ?9/ MfSI7^\(NQJ6'[ESbՙ$++q@ FBaBiWY^ rL .p!rDG MGmmm3ķQ~H۳7${оw┘3ƅ"y LxŴOl<Q}:D!Ԑ$%KWދ&Ȑ7&ᆁ;vxr}؁ݣ+?|U_\^ykAk`1:}~COD(lf$N*:^)QL8|x,jPԽENDREP DELTA SVNjijjx^S@_1isG\B4\+OK1i`Z.¢wgKG|Y2>ll+vdGlbԏeJㄳ1WI..E^ED…2;Jt9{>O`AU8Ot0 ,LY6 S-Z+}t7؋iZk/w+萪],ΣҖRGvp8w $cTR- "f~ cekw);˂̩s/Exdm Ͱe󫘣.s؜98s+凷-,'nS`WRP5֙ RoT5 N HMW·֯WRH8SLa{.!W0e*O87RE>HM\cWhٵ3k`X ^Ry8 xO{AkD`bi;GBKB?&{ENDREP DELTA SVN6'66x^QK0+. ( ]iAE([]]֔57k2{Nas %t1.script # RUN: ld.lld -shared -o %t1 --script %t1.script %t1.o # RUN: llvm-readobj %t1 > /dev/null ENDREP DELTA SVNMx^O_k0|8AŔ)8JʠnmTjbT6́>x/I~]:p}'v"gY$ 3XOA28ibi bA)()O.,Iݾf*ReraF/pX>J; ;Π~sM 8>c#5MƫEW£hX2 M CNDRNt9oڤ :mѶaS.GQ2eBfzyB.p7t3T~Ql)bqYվ9Լ%AѺY6{ENDREP DELTA SVN+[++x^ko0WJUIh$Ʋ iM5&MB&1YbV}v.Kn9{Sa8r6lv:\(4(O@""JzR8њdlFCC:,ߋXFt;dZ$ b$U,V`I(A0D 0 ,$Lf>%a+!ыP;o1`ˇh2}m<9d9WJ_7MxK]'%}R? - JN%a(ICGY& E1ڒawee Y≀Ԣ]":Qik/ƙ-8Hu=XT 1/P`*S`U:Oߣۗd{DUW9$mpTtaz0dEbK$썀l|ܨPPK)J!+r20`OIPZ cvX^ hJ{ZZjbk{3s}$Oڕ[N/(a DXhրH,%ݼizMhYs}0u֞YΞ:ch3ENDREP DELTA SVNbdbb# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t # RUN: echo "SECTIONS { foo : {*(foo)} }" > %t.script # RUN: ld.lld -o %t1 --script %t.script %t -shared # RUN: llvm-readobj -elf-output-style=GNU -s %t1 | FileCheck %s # CHECK: .text {{.*}} AX # CHECK-NEXT: .dynsym {{.*}} A # CHECK-NEXT: .hash {{.*}} A # CHECK-NEXT: .dynstr {{.*}} A # CHECK-NEXT: .dynamic {{.*}} WA # CHECK-NEXT: foo {{.*}} WA .section foo, "aw" .byte 0 ENDREP DELTA SVN g x^X]o0}W\QU&$P@bR mM~h4 J`8V[@)smv7oziA>εio(X~ږDh4 qS{+.Nh)Q7Y?a+.{ԏ }ЉMr:gд\`:%- H)?ym޴EOssu}kkC>1nuQ죘'qQB-ZFу V] k6hT,XC/)A_ R@ZxaGLyg@UꝮ"B6TĜ)y)hH1]y*Su%fҐGʐՊG k.A jG -'C#%$}#X@VA %t.script # RUN: ld.lld %t.o -script %t.script -o %t 2>&1 .globl _start .text _start: nop .section .init_array, "aw" .quad 0 ENDREP DELTA SVNx^͒k@W0)B-cYoqsyn}fҍ>/w=^A~kmJ5 (}[h@|DA_eѠ#@ 3 Yz C]h vcoAv !tjlJ kXpc//~: ~>cӖ~Y YyE`:CI[`Au91 ā'Bβ֞D<દfj\LRpeJ(U Qd~Sf#Z󼶸B[|-B]U:kѪbԄL) X%QzyXHѮ@&Nh&#N9~ęFE8~sАB ENDREP DELTA SVNy$yyx^To@⥦NTd:tLeI#ȭFqqoC@(HڗȽ{}Wu2[-U`<14 pOKؿs{o+d?xs5C):&GIcz0D7MKn"CFB}򖲦"6X&(zD\Ý9~a[8oCݮQ:1ڗHRS/5`$.dd4|4?ENDREP DELTA SVNVXVV# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: echo "SECTIONS { . = SIZEOF_HEADERS; .text : {*(.text.*)} end = .;}" > %t.script # RUN: ld.lld -o %t1 --script %t.script %t # RUN: llvm-objdump -t %t1 | FileCheck %s # CHECK: 00000000000000e9 .text 00000000 end .global _start _start: nop ENDREP DELTA SVNQyQQx^Rko0ί8La\P'ÌbP"Lv>szqH]c]P`Zx>M?Wi Wh.#D3'"\yxS] g, 5Ab(bsB6'Ty 1kxq̜[l☷ᖙ]!_|)|{cĵbTaa8`zN(D.I?g).,FUXgsH>)d[=[Ɏ$9aPþ(q!Gd"!MDtcŴ9B?E(lArd1w`Yi5^qrt$휚֕aͭ?<*;n☊~<P;T2Ȭ<8e>qB2d2Yń4#^ СxENDREP DELTA SVNUuUUx^Wm8bDU6Q궤W=hat:!M8o@rA3ό`n~_]Yb 8t懻lO/Fm>Z̛9_BPV+ȊmFW|dlv-eֽ:n|hf0y֧xlNVr<ز7;j]!YQqS޵qnn'OƶoF۱&mhb@ .l$^+6%Ɇ2Vi+w>,4n<x¥ Ma)M냦@K0qMSƅRBjt;ZL|k~^ -ayXSPwKHHk>zJ5@;jA͊W+gZ>pmbM\?#ǰs'RzCO-kSIԅ=x%N\Lv+3 )8)O/-v7sɩ=E~ہВܕˌi*Ov=Hk4ʤ,M(uJ,I z#E4";%iBץ($wLu"@` L90i'#֘ !@}.3`lcR֌/8b+V#nc\cIQ'dgm^Kn"Da[ehJ8;Op2f>w|Ws, 93;{޶s'٥C@3קxUG1"<<]c{ENDREP DELTA SVN#V##x^͗mO0W@h"QR :NT kU^ñ)-[IG)vsߝ]t^]. -`l2fi *#m\8^^nh6X9r/ZsfO< gxt2M(72WH]ȔJEfdK<2Au3㠒B1+2jqݗ"$[#ZX3  7TR2fnip{56[Ш`~~H*wݲa$ ͅDl[ j4v*[-K)6-DѺ5UW M8ژ_~d2 %t.script # RUN: ld.lld -o %t1 --script %t.script %t # RUN: llvm-objdump -t %t1 | FileCheck %s # CHECK: 0000000000001234 *ABS* 00000000 patatino .global _start _start: call patatino ENDREP DELTA SVN?x^[O0',{й,q18X¥p)^ݭcZv0qۨnFgd1֨ENDREP DELTA SVN"x^mQk0+)CFGڡlTV!16[HC-u]rν~vOq&vxyP#'9YJ%~-|x1\+Qۀh􌫝&@LA:D Xj  ھa6͜'rW)^AH*A6-Y k :{d'`V8\@Ds0DszgTmגz' .Gͨj٩eib2Q⥥!l>a2_D4K$碨>kJJ`&ENDREP DELTA SVNZZZx^͕Qo0+@U7TG(ejT 4i*ՉQt}7!@hJחs}rMݯޠ; * FBπL<Ì/ :f!xn(<  0U *n36W̕Pv/o{}{c53f a |ǚaqzYVdH!K`&淋;t"Dq=Sj|Eר˥=,/>Ubts d\^Y۳~C`Sz ?g?T|wJF1s~o!>?I;N>Q2Y[,Jnn|M[jtt!t s&IB>q.c,=aA8K5 sVxKD}DV")]TND`1wI[qޢM}jsqsim>-c.hI`hcwhswh$tvqT_@ij^5i]S|[}!>~\S/1GlMlvMlA'I7֣ +G_f= SHlz"6~˜WR0Bܥ90yENDREP DELTA SVNhJhhx^}mK0WZ*K2&B8~F_Z6I쿛_n{11wۨ/'/=f4@S{"|UeZp6j2U[NyW5T`iIXJ #PHW1ֱ(0|Y=x^e`غvbybkJod5ݱyD@i{. P"&,Y) _bnt]uZ~]]zB?^1~c om"GO^4I@4v6E)a$_vEȱ*(i|:ENDREP DELTA 303239 282047 135 SVNV,(;'W`f`ff=o23@3*,:foo // CHECK-NEXT: Value:goo // CHECK-NEXT: Value:ENDREP DELTA 303239 282213 456 SVNs/*n=p-{-dB0 - 1001 - 5 = 426667BB0 R_X86_64_RELATIVE - 0x1005 // CHECK-NEXT: } // CHECK-NEXT: ] // CHECK: 0x000000006FFFFFF9 RELACOUNT 1 ENDREP DELTA 292934 438171 422 SVNLU.Uqw{S-dA0 - 0x1000 - 5 = 4251 // DISASM: bar: // DISASM-NEXT: 1000: {{.*}} callq 4251AA0 R_X86_64_RELATIVE - 0x1005 // CHECK-NEXT: } // CHECK-NEXT: ] // CHECK: 0x000000006FFFFFF9 RELACOUNT 1 ENDREP DELTA 293258 7561 120 SVN8B)Q[F%ClH~vCu'2020B0 - 0x201000 - 5 = 4251 // 0x2020B8 - 0x201005 - 5 = 4254 // DISASM: _start: // DISASM-NEXT: 201000: {{.*}} callq 4267 // DISASM-NEXT: 201005: {{.*}} callq 4270 // DISASM: foo: // DISASM-NEXT: 202020200a in little endian // CHECK-NEXT: 0000: 00000000 00000000 0A102020ENDREP DELTA 292934 439177 475 SVN=B<WMUJ#"G;"G;`"`""q*@save-temp-labels6.Labs // CHECK-NEXT: Value:Absoluteabs // CHECK-NEXT: Value:Absoluteblah // CHECK-NEXT: Value:foo // CHECK-NEXT: Value:goo // CHECK-NEXT: Value:.Labs = 43 ENDREP DELTA SVNtarget datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" @a = common hidden global i64 0, align 4 ENDREP DELTA SVNMOMMtarget datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-scei-ps4" define i32 @foo(i32 %goo) { entry: %goo.addr = alloca i32, align 4 store i32 %goo, i32* %goo.addr, align 4 %0 = load i32, i32* %goo.addr, align 4 %1 = load i32, i32* %goo.addr, align 4 %mul = mul nsw i32 %0, %1 ret i32 %mul } ENDREP DELTA SVN(*((target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-scei-ps4" define i32 @blah(i32 %meh) #0 { entry: %meh.addr = alloca i32, align 4 store i32 %meh, i32* %meh.addr, align 4 %0 = load i32, i32* %meh.addr, align 4 %sub = sub nsw i32 %0, 48 ret i32 %sub } ENDREP DELTA SVN  target triple = "x86_64-unknown-linux-gnu" target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @foo = unnamed_addr constant i32 42 ENDREP DELTA 303239 286660 306 SVN4+.MO0.2.internalize0.2.internalizeENDREP DELTA 303239 286979 383 SVNih  YZENDREP DELTA 303239 287375 378 SVNHL pUs0.4.optENDREP DELTA 303239 287766 310 SVN9E  250.2.internalizeENDREP DELTA SVNHJHH; REQUIRES: x86 ; RUN: llvm-as %s -o %t.o ; RUN: not ld.lld -m elf_x86_64 %t.o -o %t 2>&1 | FileCheck %s ; CHECK: input module has no datalayout ; This bitcode file has no datalayout. ; Check that we error out producing a reasonable diagnostic. target triple = "x86_64-unknown-linux-gnu" define void @_start() { ret void } ENDREP DELTA 303239 288089 379 SVNjd<);error: ld-temp.o:(function _start): undefined symbol 'foo' ENDREP DELTA 303239 289917 440 SVNrl\o #O0.2.internalize; CHECK-DAG: @a = common global i8 0, align 8 @b = common hidden global i32 0, align 4 define i32 @f() { %t = load i32, i32* @b, align 4 ret i32 %t } ; CHECK-DAG: @b = internal global i32 0, align 4 ; SHARED: Symbol { ; SHARED: Name: a ; SHARED-NEXT: Value:ENDREP DELTA SVNCECC; RUN: llvm-as %s -o %t1.o ; RUN: llvm-as %S/Inputs/common3.ll -o %t2.o ; RUN: ld.lld -m elf_x86_64 %t1.o %t2.o -o %t -shared -save-temps ; RUN: llvm-dis < %t.0.2.internalize.bc | FileCheck %s target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" @a = common hidden global i32 0, align 8 define i32 @f() { %t = load i32, i32* @a, align 4 ret i32 %t } ; CHECK: @a = internal global i64 0, align 8 ENDREP DELTA 303239 290795 319 SVN9@ qEt 0.0.preoptENDREP DELTA 303239 291127 370 SVNaX  MENDREP DELTA 303239 291510 395 SVNzz  ]0.4ENDREP DELTA 303239 291918 328 SVN78  " 'f'ENDREP DELTA 303239 292633 366 SVNuN Y; Check that we don't crash when gc'ing sections and printing the result. ; RUN: ld.lld -m elf_x86_64 %t2.o %t.so --gc-sections --print-gc-sections \ ; RUN: ENDREP DELTA 303239 293301 503 SVNfr tow0.2.internalizeENDREP DELTA 303239 293817 406 SVNO[  FI0.2.internalizeENDREP DELTA 303239 294236 484 SVNS_ t\w0.2.internalizeENDREP DELTA 303239 294733 427 SVN&  /h20.2.internalizeENDREP DELTA 303239 295173 339 SVN&2  MVP0.2.internalizeENDREP DELTA 303239 295807 435 SVN"  "^DENDREP DELTA 303239 296721 511 SVNnn  J!M0.4ENDREP DELTA 303239 297245 499 SVNbb  FI0.4ENDREP DELTA 303239 298107 456 SVNu>  -Nw~0.4ENDREP DELTA 303239 298576 504 SVN Cs 8S8q0.4.opt.bc -o - | FileCheck %s ; RUN: llvm-dis %t2.so.0.4 ; Check that invalid AA pipelines are rejected gracefully. ; RUN: not ld.lld -m elf_x86_64 %t.o -o %t2.so \ ; RUN: --lto-newpm-passes=globaldce --lto-aa-pipeline=patatino \ ; RUN: -shared 2>&1 | \ ; RUN: FileCheck %s --check-prefix=INVALIDAA ; INVALIDAA: unable to parse AA pipeline description: patatino ENDREP DELTA 303239 299093 340 SVNCl $.(#1, !1, i64 0} !1 = !{!"int", !2} !2ENDREP DELTA 303239 300676 529 SVNlMk3+kpartitions=2 -save-temps -o %t %t.bc \ ; RUN: ; CHECK-NEXT: Value: 0x20 ; CHECK-NEXT: Value: 0x20ENDREP DELTA 303239 301218 321 SVN,2 M\P partitionENDREP DELTA 303239 302949 300 SVN h g.`g0.0.preopt.bc | FileCheck %s ; RUN: llvm-nm a.out.lto.o | FileCheck %s ; RUN: llvm-dis a.out.0.0.preoptENDREP DELTA 303239 303262 385 SVN89  ReS20ENDREP DELTA SVNix^_K0).nmG-a(GLom0MJnvn**>5wOνU @J˒7&؂⽋)!>ZXj81Ww̩a~e=Ghΰ$KW8Gf{ Tfe2A`JkdV4k%T Jr dS(7լkKoe 2j{X8ʭAh! ڨH gi<#y2M0!2I8¶v ]ռrp}OIraIef0G!l존I=!.tK5ja4Ah%KަkTci GA_9tHENDREP DELTA SVN1v11x^Sak0_qJr(tXT%#ℭ}gʲo{=IN]z4ߖ9@NE"ĺ~'J?+D gʆ\j˘̏!hf.UB{q@/4Ž )+-5LF=kM-lyڭ'77$S4K],?OC ^%~専GȺo>:Gj١@=: ^vBEJ{dvZz[8;4 ~G|a$A=ePPJm`,h: `Aa׿`iV $ Pj+ | 2=8N!!H$I#wP9 =gl.<7Y00sG3o;r5Z+q+6Daax8zC,p~'gW4aM_XQ:ENDREP DELTA SVNgigg; We use lld -flavor gnu because llvm-lit will append --full-shutdown to ; the ld.lld invocation. ; REQUIRES: x86 ; RUN: llvm-as %s -o %t.o ; RUN: lld -flavor gnu %t.o -o %t.so -shared -mllvm -time-passes 2>&1 | FileCheck %s target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" define void @patatino() { ret void } ; We should get the output of -time-passes even when --full-shutdown is not specified. ; CHECK: Total Execution Time ENDREP DELTA 303239 304834 350 SVN+2 0x3 0.0.preoptENDREP DELTA 303239 305197 387 SVN  %c( 0.0.preoptENDREP DELTA 303239 306910 538 SVN  v20ENDREP DELTA 303239 307461 402 SVN s v0.2.internalizeENDREP DELTA SVN1311; RUN: llvm-as %s -o %t1.o ; RUN: llvm-as %S/Inputs/unnamed-addr-drop.ll -o %t2.o ; RUN: ld.lld -m elf_x86_64 %t1.o %t2.o -o %t.so -save-temps -shared ; RUN: llvm-dis %t.so.0.2.internalize.bc -o - | FileCheck %s target triple = "x86_64-unknown-linux-gnu" target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @foo = weak constant i32 41 ; Check that unnamed_addr is dropped during the merge. ; CHECK: @foo = constant i32 42 ENDREP DELTA 303239 307876 511 SVN    0.2.internalizeENDREP DELTA 303239 308400 391 SVNvv nq0.4ENDREP DELTA 303239 309166 506 SVNCJ A 0.0.preoptENDREP DELTA SVNU(UUx^Uk@ݿa)l` \2[t0Kzl{QWv{^;U/Ggy,Bpb..\Mo1/S,CGpZi S㪝>rra➿F$O14\I'b :Խ=pN-J9G J` Z r$/ҙZs%,GщdS"Ry4(Me(.=Y Ɉ^h "Ǩə o!wfk'#\{<` vm98+Slɻ`x7Y%>Z8MLZw}ViLS"qE)vޓ:['rA{Aê(6mMv"_ن*-ի,Ho>M>5\v jO6PؽgѺJ]+Z%SnJc/`$BMX]ޞJ&F7_V?iִf2]ɳhؽ}AaLENDREP DELTA SVN   // Ensure that a mergeable string with size 0 does not cause any issue. // REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o // RUN: ld.lld %t.o -o %t .globl _start, s .section .rodata.str1.1,"aMS",@progbits,1 s: .text _start: .quad s ENDREP DELTA 303239 311277 71 SVN0] , ' +merge-string-error.s.tmp.o:(.rodata.str1.1)ENDREP DELTA 303239 311432 373 SVNW  IENDREP DELTA 303239 311836 87 SVNz2%$$R>SJ"p9]x9psix^K0+EP.)cNq.A@S}3mR}I(D Pr#dƀΡ~Ԣ4b'iMmb5_htV0v, D夋/@(aG*z.l>c尿}HgkR>s8 V|'Nm>g>NŽ8>3gx #+YS0\S/K^;Gfqc6]U5.wl_I QENDREP DELTA SVN!#!!# Check reading/writing implicit addend for R_MIPS_26 relocation. # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o # RUN: ld.lld %t.o -o %t.exe # RUN: llvm-objdump -d %t.exe | FileCheck %s # REQUIRES: mips # CHECK: Disassembly of section .text: # CHECK: __start: # CHECK-NEXT: 20000: 0e 00 80 00 jal 134348800 .text .global __start __start: jal __start+0x8000000 ENDREP DELTA 303239 313007 752 SVN{" T CR nR DynamicSection [ # REL: Tag Type Name/Value # REL: 0x00000012 RELSZ 16 (bytes) # REL: 0x00000013 RELENT 8 (bytes) # REL-NOT: 0x6FFFFFFA RELCOUNTENDREP DELTA 303239 313772 809 SVN  |*ABS*ENDREP DELTA 303239 314594 833 SVNiz%$opP_4M3@@@b40 addiu $2, $2, -32704 # CHECK-NEXT: 2000c: 24 42 80 30 addiu $2, $2, -32720 # CHECK-NEXT: 20010: 24 42 80 38 addiu $2, $2, -32712 # CHECK: 0000000000020018 .text 00000000 foo # CHECK: 0000000000037ff0 *ABS*3000030 # GOT-NEXT: Access: -32704ENDREP DELTA 303239 315440 395 SVNRR  K*ABS*ENDREP DELTA 303239 315848 598 SVN88  (*ABS*ENDREP DELTA 303239 317161 469 SVNDX  42{{.*}}:(.text+0x1)ENDREP DELTA SVN_x^Tmk0_qZ2 i0C6,M(D, [$Diٺ GϺ;M=׃?Wkt% dTppKӲ`<yC" hIɶ1@YBcFzS{.9bh4x(] ˔TԎaŀ"BZ|M#&$V Df@"'dI7˛Rd/?@(?{M4%тmA,!%Xd^FoSB캤9 Zll[=XNz~یmW. ]XrZcL}'8切_Zd_\Ed'&4 Z"p Xx`oܳ 0*pd@e}+;Ä&V̔(mHpр)U}%~[>ǮK&IKMU0rLz0bx0HQIEuFy XB"uZzPdYP5ˑfV5jl'R٩U:{шЫH0-C)"V{6)ENDREP DELTA SVNX]XXx^Vko0ίR!mrZB i]h%mB&qñi&,KH}9#/o a4A|aIq&!W$!\-Sw9cW|@zIW F4NQW\\s(ssS̬lp<9il n8豈ˆ#(}8ZV _VC%℄tZ\b 'l.$`5H*Q3rHߊ{L¸*ASK p?kb5_vۭW$ПL;xo/gS2Ăׁ2۶*B:)@Q͐ߜb-#Qɒ\WV3yڽaiQrTwM:vFؿU/iM#ENDREP DELTA 292934 445624 315 SVNzo(Y5t 32x^ŗmOP)NdBaQ^ HDRevEq}}{ 42hǣ`ލPOOzG+wͷW 8&Q iySFDOvH؊{YN0 HV؞dߣ azD@/^Npe56(wT5PoLۚ^f]{2+'od7B vPSm,2CcSW2nP; ֹmʉu6tRzIa~5brf>ݸkGs:ud:O}+{(K 2A/7FnwLnzIۘy(hMĘ%>&iC]C^` 6sB>S'&DOPbKZ!]>WWӉi\?֒[{dgǤ%ٿժ LV"ܜģ#EquQZ9O4BpcgR @d`2$;,jNjI\pF褞$ -9.M peL $n&S > l*U wR+'4RDXܒCbi*H%0@L=Rej}) @zHVGvv,jaLO/Q㋙DXܒC*.42wO|LLNdeL(JY S$*(+ՌDYVCwKQט,ܪ2TM iez;T̂8/f#s 9"-9t;JceP!3'H$XA-Վօ([MJ̴@ /S˻ԲܔajDhr$esj.C2 tOX3e,59d@=gcv= ߁6f- vX/gṛ" h94/ PZVfѿw=ed~xkた,3`#_pL3ƺ:@iʲ?J!fv$%9a]%u$zZEPUPR%o_u.SpzLF0P9rD0T$ɨ#ic0_mP35Bǽe=ʹfEYw=<;ֶjZtϴsoۅP6`;хa6.|8{ʈ?ꋚoʺENDREP DELTA SVNHfHHx^So0IP+pZNaQ6@BPΥQ쮭sn F@>$߻gz3Rp3Q;ZÒr)d-3Czq`vd0J-ʜlp4TTxZ!6,rJ6{BAMٛ+pFUL|pq9f`|qz"mBl0gt=\Dkr뒺fruJMy^bQfY a)TX'+2tZ~agbu[E'CޢNL*{>5y{=%1<^&W19Ř^0NFw͍ Ɩ?xG Gt̘*N*ZTfc)HYoi9)v>A˥T=|BZ'+!y7qx=;y{Khq8-{Ei7CE^Ǧ2"LǷ@)/S2DXV}*z֋%$49(DUR[Լ, |4Ap:q bdT/kWqݞջk^a3q2GHC9,O"׵.ENDREP DELTA 303239 322247 209 SVN  M>Q*ABS*ENDREP DELTA SVNAsAAx^VkO0_q5@+A+Ӑ8GE}yAGv?4n}ν'R8b-j` x|R wTd d7ԓ-1BJS` >~&fpz1 SerN.#@3rO\qH@s@Ba\('))2UhS8.@j}/U'G3:Fչ BMH?"Y|`l; mɺ# /F|sSL{vޅ50u,xkouH U'\F/୑[YQT$R8ڢ;hHMl, zVdW !6zyp,l˰z@mb/5:5ӏ_bcR6q(xkSIO $4΀j*Bh?.FjuUϼj@(\GULbgɊxKF4ša",{ ,zɛƱ^b=c3XoYzqhޒzb'cc>C1Kad`)UsD!8(/~y@|bxA\@9^39ӳng fM; H^ :oP.rw4G힞w2˘a{lQ\51kzC%L% ?'tseB9ph,61ImgF{r=*NI9*4KG=ؠcDds5 ENDREP DELTA 303239 323429 52 SVN[\ 7 ;*ABS*ENDREP DELTA SVNkx^Pk@_@ 6MCS花ش`bwW:=e+?,ھL8=7l O~0O'? Iœ8 Rjbf,'l$o'"dxˏ ;P3@VPymͧiy?aĉv4kQMZ75Dc;v@(D[ X7fU b9 WEB.CYrN5o@ey/XIyw:ذ\-uUiH)/j!-n->)\zyxuߕT&` XzCD3enWD!8öuպJ"%kAuENDREP DELTA 303239 323512 307 SVNgg 9`>D# *ABS**ABS*ENDREP DELTA SVNC"CCx^U]o0}W\>8ڵU>lII]B`GY {ν>'9sb H!Śl) !#sB`x# $I#A"Y)lͬ2[19m m Gi5./u[#Ь/d,"Ĉ _o@"'Y$ghI({(6ԵGfWndF .5CETqz2Z8rnj"]88+y XowL{)6<$eat4 OmDZh A_g4n|6רv9 ]4v?TQ)WXQҮ7.ٵ a+Nfr{9Ȏ̄xiJ֎f|kݱiU׊mV!<Ίl$ENDREP DELTA SVN# Check that LLD shows an error when N32 ABI emulation argument # is combined with non-N32 ABI object files. # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o # RUN: not ld.lld -m elf32btsmipn32 %t.o -o %t.exe 2>&1 | FileCheck %s # REQUIRES: mips .text .global __start __start: nop # CHECK: error: {{.*}}mips-n32-emul.s.tmp.o is incompatible with elf32btsmipn32 ENDREP DELTA SVN9$99x^V[o6~ϯ8hg.BGhʍɬAUZ])ٰd>0";| >J A|ЇNK! 6\zs z2KO|Nr3Pq@dHO jiyA j4\"~9tENDREP DELTA SVNJLJJ# REQUIRES: mips # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o # RUN: ld.lld %t.o -shared -o %t.so # RUN: ld.lld %t.so -shared -o %t2.so # RUN: llvm-readobj %t2.so > /dev/null 2>&1 ENDREP DELTA 303239 325194 1100 SVNpF;:ESrKOrFNB4Xgx{lCHa,*ihx^[K@ͯh}-MER b_C.tK@1kUVCrslNoY e'j}۱r[ά-AN/1vN@-qKp+<΁z`fu'6QQ"*Csh3 R )DR@rB}T.As -j 3 ϐ7#&/˦W,U4@ PAZ %t.rel.script # RUN: ld.lld %t1.o %t2.o --script %t.rel.scriptui $gp, %hi(%neg(%gp_rel(g1))) # CHECK: Name: _gp # CHECK-NEXT: Value: 0x100008250 # CHECK: MIPS Options { # CHECK-NEXT: ODK_REGINFO { # CHECK-NEXT: GP: 0x100008250 # CHECK-NEXT: General Mask: 0x10000ENDREP DELTA SVN>n>>x^T[o0~ϯ8RA$:Ѐԇ2 u:hI8iZ'´?_B4äY9}?; iDŽCDR{ERS=N0w3X0N`~3J׉`1%6#l(L⌛eԤqZns7wV*KCr0t bcq>K9ئ^VṒEi^NmdFB>LȆ TeTދt \%u~6. ɝɇ *$Yѭ, 'UM1ٚ7ӯwcX.y/0cB"!ǣGl;4m bEFo!cG~r,3N\8mO1u +c5w~e=BԢF}<gM+0:q)$+ :m G / 0j@.Z'lM-^wn+X uVA.Z5ձ]N0!J>w56(|dZ [ PA-`3Q$BFhu'`VS&V}sDJ\i0'B{yI+d/vC"/Nyœ%plCÀ@ENDREP DELTA SVN# Check linking MIPS code in case of -r linker's option. # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o # RUN: ld.lld -r -o %t-r.o %t.o # RUN: llvm-objdump -s -t %t-r.o | FileCheck %s # REQUIRES: mips .text .global __start __start: lw $t0,%call16(__start)($gp) foo: nop .section .rodata, "a" v: .gpword foo # CHECK-NOT: Contents of section .got: # CHECK-NOT: {{.*}} _gp ENDREP DELTA SVN & x^TMo@WTƦR/D)X@Z!sdֲץqj y_3~ČL7W^2Csv{rwk;fML$djd]NJ?QA[jƵ6F2QXaH>}\[4H2*3Τ1Me4UZ޲Jw6PS2vL`Z,5]\oG>"]?bxqp0SM:ߍr 2|CVt^,\W$B! 0<̯X$ESjx [m[FpbAei"oGJtL#"SF=Zf>8=Hs_JYnԨif4k .kY`CWMlf < pJvUeelŝwfe+@l0=)XUK5R0ՎȂn.\M-o+0XZCs~4FniG}A߆9c ڟϻS^!`v{&V,?8D X+]r3Ɣ:~ LrӉ G2i T-FjA.M؇:wp(e0T0 (BjG x6"EݯѠ` 1<(HBF,pz1$Bc%{0Q$Y4ϡfaw^_Q(wvSa1țO"FU~} l<7+ YcZPGAI.1BԃL-0?0309c[seRHF֭!Xwʌ傭ϭ hҩkeHhve.'p3ܴo3MNmR{%=]Nj`irR|HiPW 3crÜ4OP2*F*P"uoY$6 b`'W*87Op+3]ʙz+ؽ~ʴ>K iV!DS:jqNl4 u.[(@ZZeo-6~{}ܸ[,˯Աb v YV"'m EY'ف4_ [)VB~x%5a)vRpm(. 1IǠ0`FB Qȑ]*ҬP"v:'eB3'5X?l`n]wxu \x;ȳl\!au%Ucj _^f}t &`u&<7c(EJn?}lM7EENDREP DELTA 303239 330527 907 SVNno+1*{(zW}O=mpagb| cGx^]o0+FJA CDҮZt!&M]DlGCl>$]}<[n (zB7@Ȗ?tN`vǣc 68(.\3< Vѕ)tl њ'q񗻫2kI[,ئy2ʬ ΞlTh5MkX[֫"ةN V{Wh08sb U 䬱\40Eo)͑b-%:MصcV-m*lq}uk-k1^OGV3?e(RQJS3/#q"y hB7bI\b|%r /Ѕ`c]N繎|Cl^j@ZGG3'X.s@e&t^Lv*1fP ?{(DGzvR?Z#g+WC8đ* .<6lxzEJlCHÒj jeԺq; /^}r!c (/!w~M_SvHBz6z_xxqWV\ .(2Z~ۃxӻxgsR [oKي0Bx-\6\6DXINDl'?1X9' c%eF"|Owҏ#N//`#O w?7ENDREP DELTA SVNq5qqx^T]k0}<[S}0XždKM*R&])'. bst/`3=mK)*`E!Jpx kK Rsz2G@K70p;^dYyJJܘ7nR*l4QRЫ4X{4ns j32|b2W;L% +؊v~ YeYyF$=Z%쨀(hdH? iIF!80@G{GiYٝ49eN:ׯ'햗e4Aa~2sthR:dnN;aPgp%nz hJך3m:Ħ^=Xa},['g N>ir,̲p~` s#ŬDQw29SHLru9Bk7NLDpBLu!ã mO Sf.@_:ޘ8zENDREP DELTA 303239 331928 30 SVN.'  }1201000: {{.*}} callq -2101253ENDREP DELTA SVNLx^Qk0+.aR2 t*m44)&:7MAs84` auu0>pfuzr H/߻ws!L+h*@_Fg8Qp|شn[[غ`d+j>A9O_K,5 TcUf3-K~,џ1:!FT,4[10Lhr QIQk e9@kt=B-8'e]_wAaaTWfKJimɲ&KX,$f%sem{N;M3?yxENDREP DELTA 292934 452162 242 SVNa} -'*7,target emulation unknown: -m or at least oneENDREP DELTA SVN// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o // RUN: not ld.lld %t.o -o %t.so -shared 2>&1 | FileCheck %s // CHECK: {{.*}}:(.dummy+0x0): has non-ABS reloc .globl _start _start: nop .section .dummy .long foo@gotpcrel ENDREP DELTA 303239 332567 344 SVN} 8 1f72020B0 R_X86_64_GLOB_DAT bar 0x0 # CHECK-NEXT: 0x20ENDREP DELTA SVNY[YY# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: ld.lld -N -Ttext 0x100 -o %t.out %t --oformat binary # RUN: od -t x1 -v %t.out | FileCheck %s --check-prefix=BIN # BIN: 0000000 90 00 00 00 00 00 00 00 # BIN-NEXT: 0000010 # BIN-NOT: 0000020 ## The same but without OMAGIC. # RUN: ld.lld -Ttext 0x100 -o %t.out %t --oformat binary # RUN: od -t x1 -v %t.out | FileCheck %s --check-prefix=BIN .text .globl _start _start: nop ENDREP DELTA SVNHsHHx^Œ_k0){ZD}@Yշ3&ҦZwSqNao !7rrn2uJ|Ob%f)fnxda3=fuT,;jR}RRfbEh1ul g;ૂݚhN֋ ǁtTwRQJgRleFTE"KXd43(VCr*{^wW#;p/]UwH㸻/>1n[ gjG)_&rP=ډ*T +sDF2#ajIJ}y\FbCܖ¼hc%e饝{κ.#sENDREP DELTA SVN+9++x^}_O0)n $#.d J 11KY Tu|w ,z9{CO}ش=BfENDREP DELTA SVNx^_K0).>d *=tkDjiA殍HR~wMb9{NЫy@64gV ҳA  ZJ#T ) %B0 xn D̘H1&,S$3 JW GS1xJ6잿;^~ |ntzԅAc8G~bģbV+چA3hy\:c=gkœBk{eMD*mu-8En_CdENDREP DELTA 303239 333232 506 SVN1O tIh = SIZEOF_HEADERS;ENDREP DELTA 303239 334291 667 SVNz @VYhUc',Bb> ## Default is no PIE. # RUN: ld.lld\ # RUN: | FileCheck %s --check-prefix=NOPIE ## Check -pie. # CHECK-NEXT: MemSize: # CHECK: Type: PT_DYNAMIC ## Check -nopie # RUN: ld.lld -nopie %t1.o -o %t2 # RUN: llvm-readobj -file-headers -r %t2 | FileCheck %s --check-prefix=NOPIE # NOPIE-NOT: Type: SharedObjectENDREP DELTA 303239 334971 34 SVNYvW-V^ ] ix2a%t-d P~ 7(ga4J@D>qQbx^VmO0~MH6^싓&"@IHUiK0VS;D=9sOGH3e(Lw8\\W/\ zg~}~9|:btq8{\ܪDU%A6(I"'Id%^ Q\8tdrTlO렛io90|ZdEʿ%ACF:ĂUӁi ƠӂTmBD|Ip'˿\;NlQ10: Ө|N^Y?x 3..:HjcqEڈKG!UFܤI\nٟ5:ڥ\wGqJԍYHUc>߿鯂G׫<+VcmP++V::lhCY/SL[ * oQ!$g@)@< rrȨERR=ͨH~`,,gIΒ=Qt  L4m:ݹqIcLiܙ j j`PxZw,E7Mƥ˩-.o64`[uEӯa۵%4},[۬7`[5EOwmjUENDREP DELTA 303239 335390 27 SVN (a%o&HM)e.*X3x^}[k@Dgg7!J[(VZB6^ ߻Fa휙 $5A ChMfn瑽h؆YfM C?(\AIȑ/dTQUTT%ET1͠(*^څ >M[lvG|}; MRD\UJ$nb_)76oO83ea#`Sg@2DGo1G(/>ӚҎ,ϚWE^yu=/M7e<7;s. 0Ϩ)Ld0 O2.lu]B$vOwL] kQe'N*tg?/ENDREP DELTA 293846 25035 404 SVNqzzx^0 }F겍 ' hL@x dqT܌v~$E^"r :KBH((Oz2_/*OJɥJ$F Q3FNLm~cS"hk>o 4Ѝ=}eg(r 7ѤENDREP DELTA 303239 335941 433 SVNzsv ry\202020202008 - (0x201000 + 5) = 4099 // 0x202011 - (0x201005 + 5) = 4103 // 0x202000 - (0x20100a + 5) = 4081 // 0x202008 - (0x20100f + 5) = 4084 // 0x202011 - (0x201014 + 5) = 4088 // 0x20201B - (0x201019 + 5) = 4093 // DISASM: _start: // DISASM-NEXT: 201000: e8 {{.*}} callq 4099 // DISASM-NEXT: 201005: e8 {{.*}} callq 4103 // DISASM-NEXT: 20100a: e8 {{.*}} callq 4081 // DISASM-NEXT: 20100f: e8 {{.*}} callq 4084 // DISASM-NEXT: 201014: e8 {{.*}} callq 4088 // DISASM-NEXT: 20ENDREP DELTA 292934 461253 393 SVNn$;S8u0x^}1 0὿)m N N.n|b'I<b"{M- +z4*p:A' 2ZN / D qScy.Z<mj~ 61w0yOvENDREP DELTA 292934 461987 593 SVN2/m[<].200040 # CHECK-NEXT: PhysicalAddress: 0x20ENDREP DELTA 303239 338041 86 SVNGC  [h_ENDREP DELTA 303239 338158 86 SVN~z  G3KENDREP DELTA SVNVyVVx^mRK0{GEPX6@MۊڴFd$̱on+wﮗA=<(:#'8P*kA{r(g -2ęXXplځ1s@k$ߙbM3ä@91`۷Fkٺ(`ńTCɪH4S C2Jgtx5NG0`K(F2I'C/\QOBS [IzćBؾ%gخCQD¨K%>-0دaiRΉ 6ɩ' KMs02E=)1L@@DB}vRؿx^#'yP3m!:c_O{BENDREP DELTA SVNJLJJ# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t1.o # RUN: ld.lld -r %t1.o -o %t2.o # RUN: llvm-readobj -r %t2.o | FileCheck %s # CHECK: Relocations [ # CHECK-NEXT: Section ({{.*}}) .rela.text { # CHECK-NEXT: 0x3 R_X86_64_PC32 .Lstr 0xFFFFFFFFFFFFFFFC # CHECK-NEXT: } # CHECK-NEXT: ] leaq .Lstr(%rip), %rdi .section .rodata.str1.1,"aMS",@progbits,1 .Lstr: .asciz "abc\n" ENDREP DELTA SVN_a__# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t1.o # RUN: ld.lld -r %t1.o -o %t # RUN: llvm-objdump -section-headers %t | FileCheck %s # CHECK: .text # CHECK-NEXT: .rela.text # CHECK: .text._init # CHECK-NEXT: .rela.text._init # CHECK: .text._fini # CHECK-NEXT: .rela.text._fini .globl _start _start: call foo nop .section .xxx,"a" .quad 0 .section .text._init,"ax" .quad .xxx foo: call bar nop .section .text._fini,"ax" .quad .xxx bar: nop ENDREP DELTA 303239 339743 684 SVNHz%F'-=P,H x^Ak0~ Z;;vvRBj# S>uͯ]/>B^ _,'mAI4_JX.R(n&1 | FileCheck %s .globl _start _start: # CHECK: {{.*}}input1.o:(.text+0x1): relocation R_X86_64_PLT32 cannot refer to absolute symbol 'answer' defined in {{.*}}input2.o call answer@PLT ENDREP DELTA 303239 344904 352 SVN8\mNL7A%B`Xx^Oo@Gsƙa]LԤ`z!`CPP*n8Q/ͭɳKb ~w+q5묫.t,1ŕipH/87;l=65TzB¹z!-wKa^ {*C {*UثWamh|C|֊{p6ܻWq[]"h:oKedg~.ENDREP DELTA 303239 345287 458 SVN[y = Lx^10Fw-nf aØ(1|:K]ɚgIB})|rUPH3HmGnite^{Ţ= +WYa^jў*^Ghu*y i}߹ޞMy_jWP͐Zr@5M5q7"4ENDREP DELTA 292934 469803 446 SVNSY; {L:20201000 + 2)) = -2101258 // DISASM: movl $1, -2101258ENDREP DELTA 303239 345776 492 SVNsASR}m~hl*Ud"`` s KxZsw#~5y>;86x^uP[K0}8 D,I/> T{+YobmZusz/疏Sn@.@=P:\ J9)y0y/+CP[ [ ߓM3ʸ/y XGq)LpI{npb1'ew'_r4y +ef󁪁4J,<~йpi!ܭheD6u]ti5sAxSxgk*DabCGr46\VqHR*q@[agRxsENDREP DELTA SVN,,,x^ao0+N"mLEJ*Mڇh fƬڏ$DK;/a䎀 J|@aLddVπ3Jƥ3\mT/){MӢA@LHvfȯs jQP]PvEQ[9juYǞtI&q1KQDp@x.|o"Beq9vCR\(ؚqb>*|t 7Ǡ'ߚ $)O`@7&њ4$aV=y E;tzu_ZS:}ZtN(ZZSfT}} R e^+Zb'p;&=ϰo~nky#V(sXq 1Նa@/'Vߗcʯn͎v>޴*a; hWxrV`<; f}ZV=5M,] sY2~nd@ބeMsԯ~_h'ʛ l/'@o[ENDREP DELTA 303239 346837 23 SVNLH zi&x^QO0).Dl!&2熃%dZkgWD]%j˿+_ RJ9띅 50̻e齩J-UyS&AAAr:N1Դ҄#\I@ϠW&JX ;@&xM0! ->18.NOZ.5Q2Syݟп0[MFQ[mp/^S6FoS\ ҤYe.2Z c{lbY21(VDPYP `S6klۺ~?ivb&pp!SKB[ ENDREP DELTA SVNEGEE# REQUIRES: x86, cpio, shell # Test that we don't erroneously replace \ with / on UNIX, as it's # legal for a filename to contain backslashes. # RUN: llvm-mc %s -o foo\\.o -filetype=obj -triple=x86_64-pc-linux # RUN: ld.lld foo\\.o --reproduce repro # RUN: cpio -it < repro.cpio | FileCheck %s # CHECK: repro/{{.*}}/foo\.o ENDREP DELTA 303239 348295 389 SVNtw : R]9, cpiold.lld build/foo.o --reproduce repro # RUN: cpio -iENDREP DELTA SVN2422# REQUIRES: system-windows, x86, cpio # Test that a response.txt file always uses / instead of \. # RUN: rm -rf %t.dir # RUN: mkdir -p %t.dir/build # RUN: llvm-mc %s -o %t.dir/build/foo.o -filetype=obj -triple=x86_64-pc-linux # RUN: cd %t.dir # RUN: ld.lld build/foo.o --reproduce repro # RUN: echo "*response.txt" > list.txt # RUN: cpio -i --to-stdout --pattern-file=list.txt < repro.cpio | FileCheck %s # CHECK: {{.*}}/build/foo.o ENDREP DELTA 303239 348697 769 SVNO\1p?U0J , cpio"{};"=iENDREP DELTA 303239 349962 24 SVNL^K Symbol { // CHECK-NEXT: Name: _start // CHECK-NEXT: Value: 0x201000 // CHECK-NEXT: Size: 0 // CHECK-NEXT: Binding: Global (0x1) // CHECK-NEXT: Type: None (0x0) // CHECK-NEXT: Other: 0 // CHECK-NEXT: Section: .text (0x1) // CHECK-NEXT:ENDREP DELTA SVN;X;;x^_K0).)2dHa2E? 04uۦ&lv6ؗܓ7M~<`vbG ^HY+3pg UqWc^Ngа54ܪ[ɉD8QNef;D5 )p;F=H4EV'9[aH)A5ׄO݉/ /NAM1 t/uSqe^0|0zPTn&o[) u0N1)]ҋUC=9ú:dR\T蓿:' Itj$&6jaZ_˧ENDREP DELTA 303239 350077 346 SVNH = i\z$>x^_o doJiIl^ ~V)=rfEXrgQ'N3^K^$>QH0wb-2 Se8T^\KKl 4~p+y!SU#Ăx.(?.ÔvByN; @ӜUnj?_JZ9{֏5aF>k=[]lfo?^:fbH} ?Cf0j ^ˆٌF>fԜIBm(l6l!Y8SPENDREP DELTA SVNcccx^RN0}W\% "1֍M 0k5b7-Yk0s*Ч{=;v aG|(OUГNx\N(ZxgMZ`'PL)ċGaֻX'fB7ڧKM4ȢQ!4]`dyŌ˔SyUqGǖbsξSm#ETtM`*> ENDREP DELTA SVN9n99x^o0+NB)iդJMI'a3N˪A~1w} 8ϳlj3Byu`2{!/|@`76]$XlKBHoS( NH-B"1ctSawS@2,3skd5~lJ ̸w.3oGkoTrLs>ܭ'g '/PiVa[.Gn4]\CWZJ6rGC\C!{ Qө=r+ `4IpwWaoMӾe=c43 A*@8±e4ãiZn3m ֱ,tYgs⠾fU?^_j[5*a-atU5*1=u:ӌ*B]E*:QK'}EAP^ۙL#a[o3MӮb=dJH4[COS\+zDZCQ]~ UrX'8T^ȯ #=;L&tI`N[?H ekP2 MÌAENDREP DELTA SVN}*}}x^Tю@}+nvoƴ$>vӊ40" mw;Ef`iӴ 3wsϜK[˘j*`M N}&x!D (R^k1gxNJh~h\ `o{nf:5Ña~J^ǷgR{s_% G~7_4l^Sjf\!HҝCtK0\4<}L: zv@G9``[rn%uQ#+d`ù,os=#Osvdߛ&GK%1~d NSHc,!E/苒w2h J |ae|Js[XZrYCjp E?mBH}CZCs{:o40y\r\7Exo_|]2+ kn{=THSQSJ.~*2|Q/E|%Bg*Pw&i$s4uT)^Qe$nŅsT=C"18+(TENDREP DELTA 303239 350720 40 SVNiinL` 15 DEBUG 0x0ENDREP DELTA 309162 171 22 SVN<;&#'#}rp xvxevi45!n8start@@@None] // DONT_EXPORT: DynamicSymbols [ // DONT_EXPORT-NEXT: Symbol { // DONT_EXPORT-NEXT: Name: @5 DEBUG 0x0ENDREP DELTA SVNLLLx^}]o0g1ޭjbA eɲe2 5[4ُ_ ~U== v$g]>ġ)[h\"mLQVX$)-Z-JO9O6,t}$܌Q{I+Տȱ(cSZʈr5A=z'0B-G1 !U([IPӁ[]wkz$r|E&d̊t&e ѾZTUu<( ϳߕM,L pӎ 0`\곜].ɬNw(sr\a *km"»|YMr~WE),m0]81ENDREP DELTA SVN(*((# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t # RUN: ld.lld -no-rosegment -o %t1 %t -shared # RUN: llvm-readobj -elf-output-style=GNU -s %t1 | FileCheck %s # CHECK: .text {{.*}} AX # CHECK-NEXT: .dynsym {{.*}} A # CHECK-NEXT: .hash {{.*}} A # CHECK-NEXT: .dynstr {{.*}} A # CHECK-NEXT: .dynamic {{.*}} WA # CHECK-NEXT: foo {{.*}} WA .section foo, "aw" .byte 0 ENDREP DELTA 303239 352084 400 SVNZ]pimkoo20201001: 90 nop # DISASM-NEXT: Disassembly of section bar: # DISASM-NEXT: bar: # DISASM-NEXT: 20ENDREP DELTA 303239 352497 266 SVNbj  pXm5 .hidden __start_bar .quad __start_bar .section bar,"a" // Test that we are able to hide the symbol. // CHECK: R_X86_64_RELATIVE - 0x[[ADDR:.*]] // By default the symbol is visible and we need a dynamic reloc. // CHECK: R_X86_64_64 __start_foo 0x0 // CHECK: Name: __start_bar // CHECK-NEXT: Value: 0x[[ADDR // CHECK-NEXT: Size: // CHECK-NEXT: Binding: Global ENDREP DELTA SVNRTRR// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/startstop-shared2.s -o %t.o // RUN: ld.lld -o %t.so %t.o -shared // RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t2.o // RUN: ld.lld -o %t %t2.o %t.so // RUN: llvm-objdump -s -h %t | FileCheck %s // CHECK: foo 00000000 0000000000201008 // CHECK: Contents of section .text: // CHECK-NEXT: 201000 08102000 00000000 .quad __start_foo .section foo,"ax" ENDREP DELTA 303239 352794 485 SVN=" /gB%)y5FzCx^34P073"C .}}H_']?׈+00606\m m!a..~`hxjrIf~BZ~>L-2/27)?GU_bnQsJ0x"UK[pňdbENDREP DELTA 303239 353310 505 SVN/2]8202020ENDREP DELTA 303239 353828 140 SVN:Dk_l@xBB2063 6F6D6D65 6E74002E 73796D74 |r..comment..symt| // CHECK-NEXT: 0020: 6162002E 73687374 72746162 002E7374 |ab..shstrtab..st| // CHECK-NEXT: 0030: 72746162 00 |ENDREP DELTA SVN%x%%x^j0}wF4eۊt̵258~1[-80x<̘@Ye_9c@)ϘENDREP DELTA 303239 354508 376 SVNED "q#/20ENDREP DELTA 303239 354897 244 SVNJWQbP$?%6f9~>D1aC, p~Da20201020202) // CHECK-NEXT: STV_HIDDENinternal // CHECK-NEXT: Value: 0x2020202020202020ENDREP DELTA SVNhIhhx^ok0)Eбv Ź)l053mJ7e/ImU7MzȂ(U`8[@駇< hRi %MQָFK/Q_bPKL3(qo7lp+*t-ˆRP4C(JؒBqyR)&s^ shNlQjbΜa $3w| RǦߛP6xM t]"5IPMLS~Y  w+}_jf2;wω#`3.]_9]M gJlƾP[GDxQ3ַ_9k6 ƹ(OlAY ǻ2AU]aͤbX\>oNJxY!/Y1K\< S;lyZ[jhJئf&:zENDREP DELTA 303239 355172 27 SVNQy ? Fu\>error: {{.*}}:(.text+0x1): undefined symbol '_bar' call _bar ENDREP DELTA 303239 357002 107 SVN `~aZV3z@0l20201000 + 4249 + 7 = 0x2020B0 //0x20100A + 4247 + 7 = 0x2020B8 //0x201014 + 4237 + 7 = 0x20201000: 48 8b 05 a9 10 00 00 movq 4265(%rip), %rax //DISASM-NEXT: 201007: 64 8b 00 movl %fs:(%rax), %eax //DISASM-NEXT: 20201011: 64 8b 00 movl %fs:(%rax), %eax //DISASM-NEXT: 201014: 48 8b 05 9d 10 00 00 movq 4253(%rip), %rax //DISASM-NEXT: 20101b: 64 8b 00 movl %fs:(%rax), %eax //DISASM-NEXT: 20ENDREP DELTA 292934 484993 337 SVN@A 2 'tlsvar'ENDREP DELTA 303239 358429 478 SVN>A  q:202020ENDREP DELTA 303239 358920 532 SVN<K L8:202020B0 R_X86_64_TPOFF64 tlsshared0 0x0 //RELOC-NEXT: 0x2020B8 R_X86_64_TPOFF64 tlsshared1 0x0 //RELOC-NEXT: } //RELOC-NEXT: ] //0x201009 + (4256 + 7) = 0x2020B0 //0x201019 + (4248 + 7) = 0x2020B8 // DISASM: Disassembly of section .text: // DISASM-NEXT: _start: // DISASM-NEXT: 201000: {{.*}} movq %fs:0, %rax // DISASM-NEXT: 201009: {{.*}} addq 4256(%rip), %rax // DISASM-NEXT: 201010: {{.*}} movq %fs:0, %rax // DISASM-NEXT: 20ENDREP DELTA 292934 488522 534 SVNq} E n*e *x^= 0Ew,6vtpХ1i&E |Dx(RJ t`p۫) ={ٕrOӱֲyî:6٪RI&g,,@/@b޽,qUqcMDt;l/L5έk7.q'`&?5ENDREP DELTA 303239 359914 415 SVN4?@NOtF?uOvYF7x^=o0E7HWb[@U~H0R*?C hCFI`@ p}LnoF#feK .0M ͺA&ab=error: {{.*}}:(.text+0x1): undefined symbol '__tls_get_addr' ENDREP DELTA SVN ) x^P[k0~8 L`a $MO4ɒS**{\^n9ze={dž5X4ҏù-WNW iO`R-̴.c`)kBMW@q-t`0TG.m-܃mwmzJJ ̘ $(x:{У$opI4hhGNXf \^Vk[h} )9ٕn;EmRO˅*BxMM!?C_jENDREP DELTA 292934 490384 855 SVNekY dC#BW20200C = TBSS_ADDR + 4 // CHECK-NEXT: Address: 0x20201000: {{.+}} movl %fs:-8, %eax // DIS-NEXT: 201008: {{.+}} movl %fs:-16, %eax // DIS-NEXT: 201010: {{.+}} movl %fs:-4, %eax // DIS-NEXT: 20ENDREP DELTA SVNb2bbx^[O0+Z(uAӦz4&bi?~$eCqZa>:.&PO!W Pp@1%qKN7 [JN›ʒ qp186!l2S`f6 dܮӅ6MFRCzLţl( _" gӳoЗ ,G_ psX=(o3x4ZN:R'O@Mf#ݼg@[c͹?44xw]_!_}:0!ꁉ.XDeb Q6`JYQɆZ 2b8H%FKjN1V_,nmJntUg24/Ui^hNztX.S=t~NlԦTk'suT赵TgTۥRVye1}AVyYdwU^*ieUN(fߘ|!K H \AQ+rƜU OP/ܟfPyaUsX=ַ iX~sn3sU{3Nٲ7)pSaĒV$1KOCpvq.왕}<L:i?qENDREP DELTA 303239 362061 391 SVNvq \ Z jZerror: {{.*}}:(.data+0x0): undefined symbol 'hidden' .global hidden .hidden hidden # CHECK: error: {{.*}}:(.data+0x8): undefined symbol 'internal' .global internal .internal internal # CHECK: error: {{.*}}:(.data+0x10): undefined symbol 'protected' .global protected .protected protected .section .data, "a" .quad hidden .quad internal .quaENDREP DELTA 292934 491252 182 SVN%pJld.lld %t -o %t2 2>&1ENDREP DELTA 303239 362465 450 SVN}qRVi{ENDREP DELTA 303239 363290 509 SVNhlNoIi64 UM201010 // CHECK: Section ({{.*}}) .rela.dyn { // CHECK-NEXT: 0x202020ENDREP DELTA 303239 363812 527 SVN}fn,::x^]O0+`д0h`b?bb1!(XڦSYߜ9xϢА2ǒtH+*gAdI eY2q=!ǀuO}@Fobo]rX, @Іo2꾑$)ߥ{޹@ʅ]pV&>nvm!RNBǑ/TBTg[YS;vh*庶0ܻUXVn;H4 R)] lI;B#._[f5a-( H*]?EeMػmtCX, %t.script # RUN: echo "LIBSAMPLE_2.0 { global: b; local: *; } LIBSAMPLE_1.0;" >> %t.script # RUN: echo "LIBSAMPLE_3.0 { global: c; } LIBSAMPLE_2.0;" >ENDREP DELTA 303239 367406 746 SVNH\o"Fkb2pAx^j@{G"LЂVAZ68bE i!fwowpĚ%T܅/Z{,ퟚX,g] q?MtŠPx)Bp\« a?MDGdceeR۶H:V I@Q%EQ=6xO_*2^=j+ENDREP DELTA 303239 368474 232 SVNWp 1!80error: {{.*}}:(.text+0x1): undefined symbol 'f3'ENDREP DELTA 303239 368719 1048 SVNO7U\TEId p! :eEOzyw !!i!|&AZ20202020766572 6E656564 312E736F 2E300076 |.verneed1.so.0.v| # CHECK-NEXT: 0010: 65726E65 6564322E 736F2E30 00663100 |erneed2.so.0.f1.| # CHECK-NEXT: 0020: 76330066 32007632 00673100 763100 |v3.f2.v2.g1f2@v2] # CHECK: 0x000000006FFFFFF0 VERSYM 0x200228 # CHECK-NEXT: 0x000000006FFFFFFE VERNEED 0x2020ENDREP DELTA SVN###x^[o0#ar!TTD}U$Y⢬YE Ʃ*!.Or_n>{krִnf.0ݠ _ w@< #C޶PcNy7 ^й7<89I#Xv&ggˎ\WȰFe,$hׅKYH>Oɚe_Q͇. qt4F:ue֥p]E>.㺼4}kvCn4 PԻTSj1,UnW;M(R\ KZ KoD=eQYԓzJ֜V1v3ƖbYщ gm}-FO5w_ovqwM\8<:2i&9RDj-v $3h t:,k7m}F2uH|^$|5CL1("U>V"YeRj;QNTTQ= ENDREP DELTA 303239 369780 431 SVNM?>{{.*}}:1: unclosed quote // ERR1-NEXT: {{.*}}: unexpected EOF ENDREP DELTA SVNegee# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o # RUN: echo "FOO { global: extern \"C++\" { \"aaa*\"; }; };" > %t.script # RUN: ld.lld --version-script %t.script -shared %t.o -o %t.so # RUN: llvm-readobj -V -dyn-symbols %t.so | FileCheck %s # CHECK: Symbol { # CHECK: Name: _Z3aaaPf@ # CHECK: Symbol { # CHECK: Name: _Z3aaaPi@ .text .globl _Z3aaaPi .type _Z3aaaPi,@function _Z3aaaPi: retq .globl _Z3aaaPf .type _Z3aaaPf,@function _Z3aaaPf: retq ENDREP DELTA SVNStSSx^TJ@+.)jn"0J>D|Pɴ̔dZW&b6#s v5qƖ>1)eDs 9#=t#F"fH@SvD'ZS ό f6XҨoݏRMBm5Đ& .3j#.u鑠KKUeZ;`J?<_T?I'}ִN]1DBdsˑDENDREP DELTA SVN K x^}OO@)^JۋLhL AIH,Rv]~wgMi$&{fg~m=X x@u|HKU;Γ]u22V pUBM0m3L-|j1W?pkED;!_"!aדN-e "/]7 B5p"&FlPЉo 0 ÓwGFz,bJK\ 1[5fJH.*4mJaП(eVSj7e֨SjR~'ǫENDREP DELTA 303239 370224 639 SVNk0D/ ec\[Ez[+zCZi@k)} x^]O0+Nj XH\0xCLέ!ۙ|^49}ۏk!twΗ| Aș\%'w 2 zyך[m"ZD@MjG7x|s5܎GsCa \x.Eq+SX.Y6XIp D#9|J(vxcIdssӰ *J^Ϧ=S1hNKkh +]P=7tUmt A1YNYcbiy*[~]w V XľTNtH0I~]ENDREP DELTA SVNvhvvx^R]K0}ﯸlEHiAdg@n"HޭѴm7wvSEP>܆srrMrxataE?\R8"i g^ً27 }+tTЅ6 6tiBk mC{8pFW&s𰇉O4F`\?Fڲ%R Zc- OB)\&jX\` xG!Հ(Lg %t.script # RUN: ld.lld --version-script %t.script -shared %t.o -o %t.so ENDREP DELTA SVN# REQUIRES: x86 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/shared.s -o %t2.o # RUN: ld.lld -shared %t2.o -soname shared -o %t2.so # RUN: echo "foo { global: bar; local: *; };" > %t.script # RUN: ld.lld --fatal-warnings --shared --version-script %t.script %t.o %t2.so .global bar bar: nop ENDREP DELTA 303239 370876 349 SVNt-)[aDb;U?+ { global: bar;'VERSION_1.0' to symbol 'bar' failed: symbol not defined # RUN: echo "VERSION_1.0 { global: und;'VERSION_1.0' to symbol 'und' failed: symbol not defined # RUN: echo "VERSION_1.0 { local: und; };" > %t3.script # RUN: not ld.lld --version-script %t3.script -shared --no-undefined-version \ # RUN: %t.o -o %t.so 2>&1 | FileCheck -check-prefix=ERR3 %s # ERR3: version script assignment of 'local' to symbol 'und'ENDREP DELTA 303239 371238 1188 SVN,([ZHz;wX}bhd},"G{prR}HIxP4nQP~dj~Gx^QK0+1iu )VA9"8 iSLZ֕!v9;7  c VJG\QkmPZ4͹/z\<A3aQ/xA`[8.Ρ{2ȷ Dk6Eۗwk1j#)>e^:E пdrNԂ MK;[ *I,**ܪ`<,u=*=Lяx>[ENDREP DELTA SVN0200// REQUIRES: x86 // RUN: llvm-mc %s -o %t.o -filetype=obj -triple=x86_64-pc-linux // RUN: echo "V1 {};" > %t.script // RUN: not ld.lld -shared -version-script=%t.script %t.o -o %t.so 2>&1 \ // RUN: | FileCheck %s // CHECK: .o: symbol foo@V2 has undefined version V2 .globl foo@V2 .text foo@V2: ret ENDREP DELTA 303239 373240 569 SVN%kn1'Zwj { global: foo*; { global: foo2; local: *; };" > %t2.script # RUN: echo "VERSION_2.0 { global: foo*; };" >ENDREP DELTA 303239 373822 518 SVN  EPIENDREP DELTA 303239 375104 294 SVN  PMQ20ENDREP DELTA 303239 375411 291 SVN  s wENDREP DELTA 303239 376739 75 SVN[c [.quad 0 ENDREP DELTA 303239 376845 424 SVN6  OIN{{.*}}:(.data+0x0): relocationENDREP DELTA 303239 377282 430 SVN<  SKR{{.*}}:(.data+0x0): relocationENDREP DELTA SVN&(&&// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -relax-relocations -triple=x86_64-pc-linux %s \ // RUN: -o %t.o // RUN: ld.lld %t.o -o %t.so -shared // RUN: llvm-objdump -d %t.so | FileCheck %s // We used to fail trying to relax this into a pc relocation to an absolute // value. // CHECK: movq 4185(%rip), %rax movq bar@GOTPCREL(%rip), %rax .data .global bar .hidden bar bar = 42 ENDREP DELTA 303239 378651 275 SVN  j{{.*}}:(.data+0x0)ENDREP DELTA 303239 378939 379 SVNj( ` ._O_{{.*}}:(.text+0x1): relocation R_X86_64_32 out of range # CHECK: {{.*}}:(.text+0x8): relocationENDREP DELTA 303239 379331 276 SVN  k{{.*}}:(.data+0x1)ENDREP DELTA 303239 379620 346 SVNI]  B{{.*}}:(.text+0x3)ENDREP DELTA 303239 381251 255 SVNn 2I^1error: {{.*}}:(.text+0x1): undefined symbol 'foo'ENDREP DELTA SVN>5>>x^]K0@+.>dU-졔Ne8gת R6Ҵ$vo t=~ 0X\9haiŊ4!Xk'iԲ*dZ PZ`jF74ۚV ^R.5>F3]XDF>CdUG^j+Jv[x^R * tHK )ƘXIS#< i 6(5'?9$3?  AN@PB49!pj 0x08, 0x00, 0x40, 0xB9, 0x08, 0x0D, 0x00, 0x71, 0x08, 0x09, 0x00, 0x71, 0xE8, 0x0F, 0x00, 0xB9, 0xC8, 0x00, 0x00, 0x54, 0x01, 0x00, 0x00, 0x14, 0xE8, 0x03, 0x00, 0x32, 0x08, 0x01, 0x00, 0x12,ENDREP DELTA SVN=+==x^VmoHί*%s|Nb.N+ k=^,Xq&r|3333pu (< ~mς;gpNspd$5?ݡ(Joi<36~>;)⥳"Ӟb)w(N8y!;>hKPyXHnNxB; gM8sWR;]b5l˅to&m.G^I~-bzGn=60UDž6>rh8H멣Ar=gZ;Y\{R,V\$Ub ƒ0 Mp-3"u*R/@Eq=:n݋߅Oi_K^ÈOݟhA;&GL)ja᱔p EiSHy*m~2ɓp@&ϴ(;\;BW&4pF 9ʒ&ճ8qƚ}E$~EAwbE^Ӈ 4=hڒz̆ :8V5:G r rC37, C4G2]װwv[m]h4!χL*5A*.Lk_nď#fVK,HVtޏֵ3[)+zV얖U̺Yka/vAZ7+#$De68Lxة]vA a"ozǑodJSP_y*HCViD KbӐ%ИL0F4pݿ>~<F =G2Lz?4v;Zᄛ($\kOiD<(QSV0==W}_[)i{cB Vor  x ;Gkj[dͫc6wԅ~QnC@(YFENDREP DELTA 303239 384162 548 SVNU 7~6Z8uW,H;Is ;D@[I }x86_64/libSystem.yamlx86_64x86_64x86_64/libSystem.yaml -static -data_in_code_infox86_64x86_64x86_64/libSystem.yaml -r -x86_64ENDREP DELTA 292934 520223 22 SVN8? Ax@x86_64ENDREP DELTA 303239 384723 352 SVN2XWuyyw\VVx86_64export_dynamic -dead_strip %s -dylib %p/Inputs/x86_64x86_64/libSystem.yaml -o %t2.dylib -print_atoms | FileCheck -check-prefix=CHECK2 %s # RUN: lld -flavor darwin -arch x86_64 -r %s -dylib %p/Inputs/x86_64/libSystem.yaml -o %t3.o # RUN: llvm-nm -m %t3.o | FileCheck -check-prefix=RELOCATABLE_SYMBOLS# RELOCATABLE_SYMBOLS: external def ENDREP DELTA SVN~`~~x^Z[s8~WivC`f7;&v'0Ki amSo[frHG΍#Y{ /L<.;`ΌhhB/ Ľl- ~ DA#w|;E~{s\+C;_Pk/&ܚ60y3{FaudHO|!Zvj)7>^O1yz-L>Q11OO???=վ}Q/lg&XMl,?|o筅=KZN}4hv2Q&(EB8A(\q@pqBtw֠ѹPN#zui&=MyB&sҎ;0GSsn֤qfGht]Ol/ro~ps/Q!|7gE` M$uyZP|"A"w@gu%݇i wqǷ(5bh]] aͫlt|SRҠ&t#ú1qNkY 6h&-Ўy'z%BiR +3J5h Hݐ &1Jm#RszYZs%e<0'?n{QϷ: (ͯd2U(rT)"0+s0V<0P(m,V& V5%W[ %ae`(c"_wbI-mur"~jmds:Մ'k=U Wx)Ut`!o *&޺*lvUӃ9j珟cЩQm9_qbֿ7/KAgܩ(nN6iz/iJRt38rK%y~]!wfMBTmgк0QhKMFTx!l(*aymR`;HuLeb:f-i,G_3.`yun<6 >҆XA=hr1aFi,Ȼ W H*ְRF{/bFZ`*ITBZ¤6齋Bq ºD!k5+x5z!7YSp8yФo%7tCv|5E^ ww/{=uh/NOOENDREP DELTA 292934 520276 22 SVN1? %2 x86_64x86_64ENDREP DELTA 303239 385439 24 SVN'C6v5*}+'x86_64x86_64x86_64x86_64ENDREP DELTA 280461 905538 853 SVNn#S"K J]Uw1o'RRx86_64x86_64x86_64x86_641.0.0 # CHECK-BINARY-READ-NEXT: compatibility version 1.0ENDREP DELTA 303239 385494 1932 SVN~(j))1Gc#*Y7 G?qGG?gT}MT##I`fj4&7`p?06`fj4&$`p?0[#%x^͔_ 0^'o:7>C=P=wݨ5#3og b~$^bZO{`@ࡱ lҬԚxLL0V^iV^ܰ~耩(tȒD- ݈A_At8 vLQnjvoJn]x?y9Y-fw( 3)eҶauԺ 3P ENDREP DELTA 280461 906404 380 SVNy C7Bx86_64ENDREP DELTA 280461 906797 456 SVNcj:*9x86_64ENDREP DELTA 292934 520329 532 SVNZa [Zx86_64ENDREP DELTA SVNIx^UQo0~WxViP7BHFIM lvTڏa!]ff)'} k4D8JZ/a b F :g輸4beLҔGZ!ގޓStΥ&CG ɶ%g ' ͒h1 ~Bb \8_$HpNBh!} TxQg+)30*H~ϺJ sͺ tPcn9޽zηtw'4gc !Yg$xsTmw]-XXg7 Ssлp0[꺶wuϰ^.ę"@V ÒDy+?[/9?cez?{H셕 Eh*W*MI.f~e5y/MKN_I v.IJjaDN5QSҦ ntK zk޽j)׼W-TXt ^nHBב2?lEE>Cz6nߐ?65fw){ STF՝jS_!wtc!R#F ${,n Gŭ,(cf,TWVuM )N~jEߨ3jh (WS.PE'S$ȄQ qA#ł(`_')Ӝ35UrT@IHUt 4|4Nyy8Q:~t}t~("NQR9M~?ƾWƳ +sîy?uWD@&KAG-QAfx!de0(/IVګ!THgy9f1oȹ[-jڍN MݓVZ~a0aF-f5{o1 gUE>TFlmk]ȣ*7ӵ {h'ݱl[߹3LE;hlIw(T͒shqJh}!< nߑUYFyτ-2_J7uZGOPtsǀa9ض|m\#l~jɆ2JVIM/94e0(MM;qZ#kHc@!]=yPIH8{<c:rzK^BZ*\=IlUBvr/bsfƛ?q6 _o.:-Z6u; TCrVb\9x86_64/libSystem.yamlx86_64x86_64x86_64x86_64x86_64x86_64ENDREP DELTA 303239 399603 26 SVN